open-telemetry/opentelemetry-specification

Criteria for Otel to Zipkin remoteEndpoint transformation should be broadened

Open

#1,560 opened on Mar 18, 2021

View on GitHub
 (3 comments) (1 reaction) (0 assignees)Makefile (987 forks)auto 404
help wantedspec:trace

Repository metrics

Stars
 (4,267 stars)
PR merge metrics
 (PR metrics pending)

Description

The current Otel <-> Zipkin span mapping specifies that Zipkin's remoteEndpoint should be specified if Zipkin's SpanKind resolves to either SpanKind.CLIENT or SpanKind.PRODUCER, but omits SpanKind.CONSUMER.

If Zipkin SpanKind resolves to either SpanKind.CLIENT or SpanKind.PRODUCER then the service SHOULD specify remote endpoint otherwise Zipkin won't treat the Span as a dependency. peer.service is the preferred attribute but is not always available. The following table lists the possible attributes for remoteEndpoint by preferred ranking:

Per discussion in https://github.com/open-telemetry/opentelemetry-specification/discussions/1546 , this should be broadened to omit any specific SpanKind, and instead require that remoteEndpoint be populated wherever possible regardless of SpanKind.

It remains a SHOULD because there will still be cases where connections from things such as Unix domain sockets will not necessarily have a way to map to remoteEndpoint.

Contributor guide