I observed an inconsistency in how the service nam...
# support
a
I observed an inconsistency in how the service name is displayed in the Services tab during trace visualisation. In our Go service, we are using OpenTelemetry's official Go libraries (go.opentelemetry.io/otel) for exporting and extracting trace data. My use case involves manually extracting the trace-parent from incoming HTTP request headers and injecting it into Redis and Kafka events/stream data, to ensure that downstream services can correctly capture and propagate the trace context. Since the libraries do not natively support this specific use case, much of the logic for extraction and injection had to be implemented manually. Additional observations: When a trace-parent header with a specific spanId is passed to the /signal endpoint, the span corresponding to that spanId appears as missing span in the trace visualization. As a result, the /signal span is shown as nested under a non-existent parent. In contrast, when no trace-parent is provided, the /signal span appears correctly at the top level of the trace hierarchy. Below is a reference to the relevant Go implementation:
Copy code
ctx := r.Context()
var span trace.Span
traceParent := ""
if otelMgr != nil {
 headerCarrier := propagation.HeaderCarrier(r.Header)
 ctx = otelMgr.ExtractContext(ctx, headerCarrier)
 traceParent = headerCarrier.Get("traceparent")
  
 ctx, span = otelMgr.GetTracer().Start(ctx, "/signal", trace.WithSpanKind(trace.SpanKindServer))
 defer span.End()
}