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
- Tracing for DataPower API Gateway
- Creating an application perspective
- Troubleshooting
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:
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:
- 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.
- Select Services or Endpoints, and then click Next.
- 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 likedatapower:<datapower-appliance-name>
, for example,datapower:apis-minimum-gw-0
. - 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:
- Enable debugging for Instana DataPower Tracing:
- Access the DataPower pod, and go to the
/app/libs
directory in thejaeger-tracing-agent
container. - Edit the
logback.xml
file by changing<root level="info">
to<root level="debug">
. The change takes effect in a minute.
- Access the DataPower pod, and go to the
- Use the
oc logs <datapower-pod-name> -c jaeger-tracing-agent
command to collect the debugging information of the Instana DataPower Tracing agent.