129 lines
4.5 KiB
YAML
129 lines
4.5 KiB
YAML
groups:
|
|
- id: trace.http.client
|
|
type: span
|
|
extends: attributes.http.client
|
|
span_kind: client
|
|
brief: 'Semantic Convention for HTTP Client'
|
|
stability: stable
|
|
attributes:
|
|
- ref: http.request.method
|
|
sampling_relevant: true
|
|
- ref: http.request.method_original
|
|
requirement_level:
|
|
conditionally_required: If and only if it's different than `http.request.method`.
|
|
- ref: http.request.resend_count
|
|
requirement_level:
|
|
recommended: if and only if request was retried.
|
|
- ref: http.request.header
|
|
requirement_level: opt_in
|
|
- ref: http.response.header
|
|
requirement_level: opt_in
|
|
- ref: server.address
|
|
sampling_relevant: true
|
|
- ref: server.port
|
|
sampling_relevant: true
|
|
- ref: url.full
|
|
sampling_relevant: true
|
|
requirement_level: required
|
|
- ref: user_agent.original
|
|
requirement_level: opt_in
|
|
- ref: url.scheme
|
|
- ref: network.peer.address
|
|
- ref: network.peer.port
|
|
requirement_level:
|
|
recommended: If `network.peer.address` is set.
|
|
- ref: network.transport
|
|
requirement_level: opt_in
|
|
note: >
|
|
Generally `tcp` for `HTTP/1.0`, `HTTP/1.1`, and `HTTP/2`. Generally `udp` for `HTTP/3`.
|
|
Other obscure implementations are possible.
|
|
|
|
- id: trace.http.client.experimental
|
|
type: attribute_group
|
|
brief: 'Experimental attributes for HTTP Client spans'
|
|
stability: experimental
|
|
extends: attributes.http.client.experimental
|
|
attributes:
|
|
- ref: http.request.size
|
|
requirement_level: opt_in
|
|
- ref: http.response.size
|
|
requirement_level: opt_in
|
|
- ref: http.request.body.size
|
|
requirement_level: opt_in
|
|
- ref: http.response.body.size
|
|
requirement_level: opt_in
|
|
|
|
- id: trace.http.server
|
|
type: span
|
|
extends: attributes.http.server
|
|
span_kind: server
|
|
brief: 'Semantic Convention for HTTP Server'
|
|
stability: stable
|
|
attributes:
|
|
- ref: http.request.method
|
|
sampling_relevant: true
|
|
- ref: http.request.method_original
|
|
requirement_level:
|
|
conditionally_required: If and only if it's different than `http.request.method`.
|
|
- ref: http.route
|
|
- ref: http.request.header
|
|
sampling_relevant: true
|
|
requirement_level: opt_in
|
|
- ref: http.response.header
|
|
requirement_level: opt_in
|
|
- ref: server.address
|
|
sampling_relevant: true
|
|
- ref: server.port
|
|
sampling_relevant: true
|
|
- ref: network.local.address
|
|
requirement_level: opt_in
|
|
brief: Local socket address. Useful in case of a multi-IP host.
|
|
- ref: network.local.port
|
|
requirement_level: opt_in
|
|
brief: Local socket port. Useful in case of a multi-port host.
|
|
- ref: client.address
|
|
sampling_relevant: true
|
|
note: >
|
|
The IP address of the original client behind all proxies, if
|
|
known (e.g. from [Forwarded#for](https://developer.mozilla.org/docs/Web/HTTP/Headers/Forwarded#for),
|
|
[X-Forwarded-For](https://developer.mozilla.org/docs/Web/HTTP/Headers/X-Forwarded-For), or a similar header).
|
|
Otherwise, the immediate client peer address.
|
|
examples: ['83.164.160.102']
|
|
- ref: client.port
|
|
requirement_level: opt_in
|
|
brief: The port of whichever client was captured in `client.address`.
|
|
- ref: url.path
|
|
requirement_level: required
|
|
sampling_relevant: true
|
|
- ref: url.query
|
|
requirement_level:
|
|
conditionally_required: If and only if one was received/sent.
|
|
sampling_relevant: true
|
|
- ref: url.scheme
|
|
sampling_relevant: true
|
|
- ref: user_agent.original
|
|
sampling_relevant: true
|
|
- ref: network.peer.address
|
|
- ref: network.peer.port
|
|
requirement_level:
|
|
recommended: If `network.peer.address` is set.
|
|
- ref: network.transport
|
|
requirement_level: opt_in
|
|
note: >
|
|
Generally `tcp` for `HTTP/1.0`, `HTTP/1.1`, and `HTTP/2`. Generally `udp` for `HTTP/3`.
|
|
Other obscure implementations are possible.
|
|
|
|
- id: trace.http.server.experimental
|
|
type: attribute_group
|
|
brief: 'Experimental attributes for HTTP Server spans'
|
|
stability: experimental
|
|
attributes:
|
|
- ref: http.request.size
|
|
requirement_level: opt_in
|
|
- ref: http.response.size
|
|
requirement_level: opt_in
|
|
- ref: http.request.body.size
|
|
requirement_level: opt_in
|
|
- ref: http.response.body.size
|
|
requirement_level: opt_in
|