Splunk AppDynamics

Transactions correlation for WSO2 ESB (Apache Synapse)

CommunityUser
Splunk Employee
Splunk Employee

I can see from this document [1] that Appdynamics out of the box supports transaction correlation for Apache Synapse. WSO2 ESB is built on top of Apache Synapse, so it should work for WSO2 ESB as well. As mentioned in [1], I've enabled "enable-soap-header-correlation", then I can see in the controller dashboard that multiple tiers (different WSO2 products such as WSO2 API Manager and WSO2 ESB) are connected, I can see business transactions and snapshots. But the call graph includes only the top level class, it doesn't show all the classes/methods that follows the top level class. Is there anything else I need to configure to view the entier call graph?

See these screenshots. 

image.pngimage.png

[1] https://docs.appdynamics.com/display/PRO42/Supported+Environments+and+Versions

Labels (1)
0 Karma

Peter_Holditch
Builder

It appears that the whole duration of the request processing was 7ms in your case, and it contained no backend calls or monitored thread handoffs.

It is likely that you need to include some classes in your fork-config configuration to see thread handoff activity.  What is actually happening downstream of these requests arriving?

Warm regards,
Peter

0 Karma

CommunityUser
Splunk Employee
Splunk Employee

Hi Peter,

I've mocked an API in WSO2 ESB and exposted it through WSO2 API Gateway. Both are different tiers. When WSO2 API Gateway receives requests from clients, it authenticates the client (OAuth), applies throttling and passing the request to WSO2 ESB. When WSO2 ESB receives the request, it reads the query parameter, does some calculation in javascript and returns the response. Hence, I should be able to see the call graph of WSO2 API Gateway and also there should be an exit call from WSO2 API Gateway to WSO2 ESB. Any idea why I'm not seeing any of these?

Regards

Rajkumar Rajaratnam

0 Karma

Peter_Holditch
Builder

This is almost certianly due to additional fork-config configuration being required to track the async transactions within the API gateway, and perhaps some additional entry/exit configuration being required.

What version of WSO2 are you using?  The documentation specifically mentions v4.7 in the support matrix.

You might be best opening a support ticket so the team can help you investgate this.

0 Karma

CommunityUser
Splunk Employee
Splunk Employee

Hi Peter,

The doc [1] says that all classes not excluded are by default included. I haven't modified my app-agent-config.xml and I can see that the default "excludes" configuration doesn't exclude any WSO2's or Synapse's classes or packages. Still you want me to explictly add WSO2's and Synapse's classes/packages in "includes" configuration?

[1] https://docs.appdynamics.com/display/PRO44/Enable+Thread+Correlation+for+Java

Regards

Rajkumar Rajaratnam

0 Karma

CommunityUser
Splunk Employee
Splunk Employee

Also, what entry/exit points you are using internally for Apache Synapse? The proper entry point would be receive() method of org.apache.synapse.core.axis2.SynapseMessageReceiver and exit point would be send() method of org.apache.synapse.core.axis2.Axis2FlexibleMEPClient

Can you please let me know what entry/exit points you are using internally, if you say transaction correlation is supported out of the box for Apache Synapse?

Regards

Rajkumar Rajaratnam

0 Karma
Get Updates on the Splunk Community!

Data Management Digest – November 2025

  Welcome to the inaugural edition of Data Management Digest! As your trusted partner in data innovation, the ...

Splunk Mobile: Your Brand-New Home Screen

Meet Your New Mobile Hub  Hello Splunk Community!  Staying connected to your data—no matter where you are—is ...

Introducing Value Insights (Beta): Understand the Business Impact your organization ...

Real progress on your strategic priorities starts with knowing the business outcomes your teams are delivering ...