Click the Start a free trial link to start a 15-day SaaS trial of our product and join our community as a trial user. If you are an existing customer do not start a free trial.
AppDynamics customers and established members should click the sign in button to authenticate.
Hi, We have an application that uses camel.
Its online banking loan application. It has three appliations(loanapp, personalloanapp and homeloanapp).
The customer can apply for a personal loan or home loan online. Based on loan type chosen the customer-details will be either put in a JMS queue or sent to another JVM. i.e. if the customer is applying for personal loan, then customer details are put in a queue using camel in loanapp. This queue is read from personalloanapp using camel and put in DB. If the customer is applying for homeloan, his details are sent to homeloanapp using camel end point where his details are entered in DB.
The loanapp and personalloanapp is using camel while the home loan app is simple web application. While monitoring these applications using app dynamics agent, the topolgy is not shown correctly. i.e all the three servers are never shown in the topology. Is there something that we are missing. Please clarify.
It seems that the out of the box instrumentation is not following your transactions end to end in this case.
This could either be because the agent is missing a thread handoff within a process, or an inter-process handoff, either at the producer or consumer side.
Since your inter-process handoffs are JMS, the producer calls (JMS send calls) are likely to be instrumented, meaning the agent is probably either missing your downstream JMS consumers, or some internal thread handoffs.
Thread handoffs within Camel often need
<include filter-type="STARTSWITH" filter-value="org.apache.camel/"/>"
added to the <fork-config> section in the agent's app-agent-config.xml; you could try and add this and see if this solves the issue.
If not, the best bet is to work through this with an engineer via a support ticket. It will be helpful if you attach agent debug logs from the upstream and downstream systems that should correlate. Collect DEBUG level logs on the com.singularity package while some load that should be correlated is run.