Jaeger with ElasticSearch

8/13/2019

I have created a microservice based architecture using Spring Boot and deployed the application on Kubernetes/Istio platform.

The different microservices communicate with each other using either JMS (ActiveMQ) or REST API.

I am getting the tracing of REST communication on Istio's Jaeger but the JMS based communication is missing in Jaeger.

I am using ElasticSearch to store my application logs.

Is it possible to use the same ElasticSearch as a backend(DB) of Jaeger? If yes then I will store tracing specific logs in ElasticSearch and query them on Jaeger UI.

-- Safvan Kothawala
elasticsearch
istio
jaeger
kubernetes

2 Answers

8/13/2019

While this isn't exactly what you asked, it sounds like what you're trying to achieve is seeing tracing for your JMS calls in Jaegar. If that is the case, you could use an OpenTracing tracing solution for JMS or ActiveMQ to report tracing data directly to Jaegar. Here's one potential solution I found with a quick google. There may be others.

https://github.com/opentracing-contrib/java-jms

-- Graham Lea
Source: StackOverflow

8/13/2019

I believe you can reuse Elasticsearch for multiple purposes - each would use a different set of indices, so separation is good.

from: https://www.jaegertracing.io/docs/1.11/deployment/ :

Collectors require a persistent storage backend. Cassandra and Elasticsearch are the primary supported storage backends

Tying the networking all together, a docker-compose example: How to configure Jaeger with elasticsearch?

-- Opster Elasticsearch Support
Source: StackOverflow