I have installed Java Agent in of the microservice. I have noticed that one of the transaction is taking 1100 ms of time and it has only one span which is taking just 10 ms so how should I know where the remaining time was spend in transaction.
Our out of the box support is for common frameworks and libraries to provide visibility to incoming and outgoing operations. If the bulk of request handling time is spent within your code, then we support it by providing the ability to extend the agent using our public API or the OpenTracing bridge. It requires some code changes, but we tried to make it as simple as possible and it provides you the ability to monitor anywhere in your code.
If you are using frameworks we do not yet support, try to find the places in your code that calls/wraps them to apply one of the custom instrumentation methods mentioned above.
If the latter is the case, we will be glad to hear what is not supported and you are missing.
Thanks for responding. Microservice which i am trying to monitor is built on Spring boot framework. So it is supported by Elastic Java agent.
And if I understood you correctly, current java agent is only able to trace duration for common libraries not for custom libraries or application code? That is the reason, we won't be able to completely trace the duration taken by a transaction (1.1 sec in my case).
Please let me know if you require more details from my end.
Sorry if I wasn't clear enough about that - we DO support custom instrumentation of application code.
Please take a look at our public API and the OpenTracing bridge to see how you can instrument and trace any part of your code.
I hope you find it useful and intuitive.
Good luck!
Eyal.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.