opentelemetry-specification
opentelemetry-specification copied to clipboard
http.flavor should become net.app.protocol.name and net.app.protocol.version
With #2602 net.app.protocol.name
and net.app.protocol.version
would be a standard way to describe protocol and http.flavor
can be removed.
http.flavor
has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used.
Value | Description |
---|---|
1.0 |
HTTP/1.0 |
1.1 |
HTTP/1.1 |
2.0 |
HTTP/2 |
3.0 |
HTTP/3 |
SPDY |
SPDY protocol. |
QUIC |
QUIC protocol. |
Proposal:
- remove
http.flavor
-
net.app.protocol.name
is recommended if it's notHTTP
.SPDY
andQUIC
should go here -
net.app.protocol.version
to contain1.1
,2.0
, etc..
What do I do if I want to encode the HTTP version used in a grpc call? Probably just a HTTP child span under the grpc span?
@Oberon00 Not sure if I interpret the RPC conventions correctly, but it seems to always recommend the creation of the HTTP span, either as child of an RPC span or as "carrier" of RPC attributes.
HTTP calls can generally be represented using just HTTP spans. If they address a particular remote service and method known to the caller, i.e., when it is a remote procedure call transported over HTTP, the rpc.* attributes might be added additionally on that span, or in a separate RPC span that is a parent of the transporting HTTP call.
Discussed during triage meeting. Item has been deferred. @lmolkova please discuss at the next Instrumentation SIG, and get support on this issue. Depending on responses from SIG, we can decide on whether to move forward.