grafana / beyla

eBPF-based autoinstrumentation of web applications and network metrics
https://grafana.com/oss/beyla-ebpf/
Apache License 2.0
1.28k stars 88 forks source link

Span ID is always 0000000000000000 #816

Open rjmc012 opened 2 months ago

rjmc012 commented 2 months ago

When the user request goes through multiple services, Beyla captures it on each services but the traceparent seems not set. Always showing span ID as 0000000000000000, so the flow of the request cannot be identified from the traces.

In some cases, where the 2 services which are consecutive in the request flow running on a same node, the span ID getting generated and the span displays traces from these two services in Grafana visualization.

Lnaguages in services :- Java and NodeJS Workload Environment :- Azure AKS Beyla Installation :- Daemonset (privileged mode)

grcevski commented 2 months ago

This is a current limitation, we can only propagate context properly for Go, for the other languages we can only do it if the applications are monitored by the same Beyla instance, which limits us to a single node.

We cover some of the limitations of what's currently there in this blogpost https://grafana.com/blog/2024/03/21/opentelemetry-distributed-tracing-with-ebpf-whats-new-in-grafana-beyla-1.3/

We've figured out a completely new approach which will eliminate both restrictions, I expect we'll have something in the next few releases.