I have already elastic apm and rum setup for a large environment which we are very confortable. Some colleagues are asking about enabling jaeger Jaeger integration | APM Server Reference [7.11] | Elastic for some services that they have already instrumented with Jaeger.
I've been reading and trying to understand how these two worlds fix together, if there are benefits of one over the other or they complement each other, I haven't work before with Jaeger so have no expertise on it.
Hoping anyone can point me in the right direction or give answer.
Is there any benefit of using jaeger instead of apm agent?
can/should be enabled together or choose between one or the other?
are jaeger traces integrated into elastic so kibana dashboards continue working in APM view?
Hi! Bear in mind that as a developer of Elastic APM, my answers might be a little bit biased Maybe someone from the community will chime in too.
I would say the only benefit of using Jaeger in this case is if you're already using Jaeger -- that means you don't have to change your instrumentation. When you're using the Elastic APM UI, the Elastic APM agents will always provide the best experience, seeing as they are designed to be used together from the start.
Because Jaeger has its own trace context header, and does not currently support W3C trace context headers, it is not possible to mix and match the use of Elastic’s APM Agents and Jaeger’s Clients.
Since that statement was written, support for W3C TraceContext was added for the Jaeger Java client; other languages do not support W3C TraceContext. If your Jaeger-instrumented services are written in Java then it should be possible to mix Jaeger and Elastic APM agents across your services.
Thanks @axw for your response. I continued reading and my conclusion is same, only in case we have already instrumentation with Jaeger it will have sense going for it, and even if its the case I see the OpenTracing Bridge does the trick and translate traces to APM, so I will recommend this approach.
Regards
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.