Monitoring IBM API Connect application

IBM API Connect application runtime monitoring focuses on monitoring key application performance metrics in production, especially the transactions through DataPower API Gateway. The Instana agent can automatically gather infrastructure resource metrics, but to enable the agent to gather trace information from IBM API Connect, you must complete the additional steps that are outlined in this topic.

Metrics for DataPower API Gateway

The Instana DataPower sensor is used to monitor DataPower API Gateway. After you install the Instana host agent, the IBM DataPower sensor is automatically installed, but you need to configure the IBM DataPower sensor. For more information, see Monitoring IBM DataPower.

Tracing for DataPower API Gateway

The Instana DataPower-tracing feature can monitor the API Management capability and examine how APIs are started in DataPower API Gateway.

Instana DataPower Tracing supports only the scenario where the DataPower instance is deployed through the API Connect Operator in Red Hat OpenShift with the following versions:

  • API Connect Operator 3.5.0 and later and earlier than 5.2.0
  • API Connect 10.0.5.5 and later and earlier than 10.0.8.0
  • DataPower Gateway Operator 1.6.10 and later and earlier than 1.11.0

For IBM API Connect deployment on VMware, you need to deploy a DataPower Gateway appliance. Usually, the DataPower physical appliance or DataPower virtual appliance is used as the API Gateway. If you want to enable tracing for DataPower physical appliance for DataPower virtual appliance, see IBM DataPower Tracing.

To enable tracing for DataPower API Gateway, you must install and configure the DataPower Tracing agent.

Install the DataPower Tracing agent

If you enabled Jaeger tracing for DataPower, edit the GatewayCluster custom resource to replace the Jaeger Tracing agent image with the Instana DataPower Tracing agent image. However, if you did not enable Jaeger tracing for DataPower, edit the GatewayCluster custom resource to add the jaegerTracing property, and then set the image attribute to Instana DataPower Tracing agent image URL.

To configure and run the Instana Tracing agent sidecar container, edit the GatewayCluster custom resource by adding or editing the jaegerTracing property in the following YAML file:

spec:
  jaegerTracing:
    samplingType: const
    propagationFormat: w3c
    samplingRate: '1'
    agentImage: 'icr.io/instana/instana-dp-agent-image:latest'
    tls:
      disabled: true
      skipHostVerify: false
    env:
      - name: INSTANA_AGENT_HOST
        valueFrom:
          fieldRef:
            apiVersion: v1
            fieldPath: status.hostIP

For more information about jaegerTracing, see DataPower Operator doc.

Verify the result on the Red Hat OpenShift console as in the following example:

close issue

You can view the tracing data of IBM API Connect API Gateway in the Instana UI. The default service name of DataPower Tracing is datapower:<datapower pod name>, for example, datapower:apis-minimum-gw-0.

For more information, see Instana Agent requirements for installing host agent in Kubernetes.

Unconfigure the DataPower Tracing agent

To unconfigure the DataPower Tracing agent, remove the jaegerTracing property from the corresponding GatewayCluster custom resource in the YAML file.

Known limitations

  • DataPower Tracing supports only the API gateway and doesn't support other services such as the multiprotocol gateway and web service proxy.

Creating an application perspective

To create an application perspective to view trace information that is gathered from IBM API Connect application runtime, complete the following steps:

  1. Open the application perspective wizard in one of the following ways:
    • Click New Application Perspective from the Applications list in the Instana dashboard.
    • Go to Applications in the navigation panel in the Instana dashboard, and click Add > New Application Perspective on the Application page.
  2. Select Services or Endpoints, and then click Next.
  3. Click Add filter, and then select a service name. Multiple services and endpoints can be selected by using OR conditions. For DataPower service, the service name is like datapower:<datapower-appliance-name>, for example, datapower:apis-minimum-gw-0.
  4. In the Application Perspective Name field, enter a name for the IBM API Connect application perspective, and then click Create.

Troubleshooting

Missing DataPower Tracing calls in the Instana UI

If the DataPower Tracing calls are not displayed in the Instana UI as expected, complete the following steps:

  1. Enable debugging for Instana DataPower Tracing:
    1. Access the DataPower pod, and go to the /app/libs directory in the jaeger-tracing-agent container.
    2. Edit the logback.xml file by changing <root level="info"> to <root level="debug">. The change takes effect in a minute.
  2. Use the oc logs <datapower-pod-name> -c jaeger-tracing-agent command to collect the debugging information of the Instana DataPower Tracing agent.