Reputation: 31
I installed below ElasticStack.
Kibana Version: 7.17.9 ElasticSearch Version: 7.17.9 Elastic-apm server version: 7.17.9
All are running locally
I have a server1 calling another server2, both are written using spring boot, but they use different apm agent. For the server1, it uses opentelemetry-javaagent-2.jar and exporter connects to local elastic-apm server at http://localhost:8200 For server 2, it uses elastic-apm-agent-1.4.0.jar and exporter also connects to local http://localhost:8200.
But after a HTTP API call into server1 (which calls server2 internally), the trace for each server is not connected. I can view them in each traces tab in Kibana, but not from server1 API traces (which should contain the traces when it calls servers).
Thanks!
I did some check, seems the opentelemetry agent adds "traceparent" when it calls server2, which is standard W3C propagator header. But for elastic-apm-agent, it will add "elastic-apm-traceparent" header. Is there any way to connect the trace together when I use opentelemetry agent and elastic-apm agent together?
Upvotes: 0
Views: 668
Reputation: 146
All recent Elastic APM agents use the standard w3c traceparent header - version 1.4.0 of the java agent predates the standard. Upgrade to a newer release, currently v1.38.0, to resolve this issue.
Upvotes: 0