Closed lmolkova closed 1 year ago
stable attribute ordering would be wonderful also
This not only affect table generation, but also affects code generation.
This seems like a bug more than a feature request. The extends implementation attempts to iterate repeatedly until a "fixpoint" is reached, i.e. it aims to support grandparent attributes, they should even be indistinguishable from parent attributes.
This is fixed now with #204. Here https://github.com/open-telemetry/semantic-conventions/pull/367 we have inherited properties (p2) and grandparent attributes populated (p1).
https://github.com/open-telemetry/opentelemetry-specification/pull/3183 declares attributes separately from traces and metrics and then reuses attributes in corresponding semconvs. There are two issues:
Grandparent attributes are not populated in the table. E.g.
http.common
group defineshttp.method
http.server
group extendshttp.common
and defineshttp.route
metric.http.server.duration
extendshttp.server
. Whenmetric.http.server.duration(full)
semconv table is rendered, it does not includehttp.method
, but includeshttp.route
Referenced attributes description should come from extended semconv first. E.g.
net.peer.name
is defined in span-general semconvhttp.client.common
providing long HTTP-specific descriptionsampling_relevant: true
for tracing (and none of it for metrics), so it has to be referenced again intrace.http.client
and long HTTP-specific description should be repeatednet.peer.name
fortrace.http.client
semconv, it should prioritize properties fromtrace.http.client
, then read them from parent (http.client.common
) and finally fill in the gaps from original span-general spec.