Skip to content

Commit ec3a4cf

Browse files
lmolkovajoaopgrassi
andauthoredOct 12, 2023
Remove repetitive notes, briefs, etc on ref attributes (#367)
Co-authored-by: Joao Grassi <joao.grassi@dynatrace.com>
1 parent 4c7e85d commit ec3a4cf

File tree

6 files changed

+30
-142
lines changed

6 files changed

+30
-142
lines changed
 

‎CHANGELOG.md

+3
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,9 @@ release.
139139
- BREAKING: Rename/replace `(client|server).socket.(address|port)` attributes
140140
with `network.(peer|local).(address|port)`.
141141
([#342](https://github.com/open-telemetry/semantic-conventions/pull/342))
142+
- Make `network.protocol.name|version` description consistent between HTTP
143+
spans and metrics.
144+
([#367](https://github.com/open-telemetry/semantic-conventions/pull/367))
142145

143146
## v1.21.0 (2023-07-13)
144147

‎docs/http/http-metrics.md

+18-15
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ of `[ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10
8080
| [`http.request.method`](../attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | Required |
8181
| [`http.response.status_code`](../attributes-registry/http.md) | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: If and only if one was received/sent. |
8282
| [`http.route`](../attributes-registry/http.md) | string | The matched route (path template in the format used by the respective server framework). See note below [3] | `/users/:userID?`; `{controller}/{action}/{id?}` | Conditionally Required: If and only if it's available |
83-
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [4] | `amqp`; `http`; `mqtt` | Recommended |
84-
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [5] | `3.1.1` | Recommended |
83+
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [4] | `http`; `spdy` | Recommended: if not default (`http`). |
84+
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [5] | `1.0`; `1.1`; `2`; `3` | Recommended |
8585
| [`server.address`](../general/attributes.md) | string | Name of the local HTTP server that received the request. [6] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | Opt-In |
8686
| [`server.port`](../general/attributes.md) | int | Port of the local HTTP server that received the request. [7] | `80`; `8080`; `443` | Opt-In |
8787
| [`url.scheme`](../url/url.md) | string | The [URI scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component identifying the used protocol. | `http`; `https` | Required |
@@ -252,8 +252,8 @@ This metric is optional.
252252
| [`http.request.method`](../attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | Required |
253253
| [`http.response.status_code`](../attributes-registry/http.md) | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: If and only if one was received/sent. |
254254
| [`http.route`](../attributes-registry/http.md) | string | The matched route (path template in the format used by the respective server framework). See note below [3] | `/users/:userID?`; `{controller}/{action}/{id?}` | Conditionally Required: If and only if it's available |
255-
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [4] | `amqp`; `http`; `mqtt` | Recommended |
256-
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [5] | `3.1.1` | Recommended |
255+
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [4] | `http`; `spdy` | Recommended: if not default (`http`). |
256+
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [5] | `1.0`; `1.1`; `2`; `3` | Recommended |
257257
| [`server.address`](../general/attributes.md) | string | Name of the local HTTP server that received the request. [6] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | Opt-In |
258258
| [`server.port`](../general/attributes.md) | int | Port of the local HTTP server that received the request. [7] | `80`; `8080`; `443` | Opt-In |
259259
| [`url.scheme`](../url/url.md) | string | The [URI scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component identifying the used protocol. | `http`; `https` | Required |
@@ -356,8 +356,8 @@ This metric is optional.
356356
| [`http.request.method`](../attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | Required |
357357
| [`http.response.status_code`](../attributes-registry/http.md) | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: If and only if one was received/sent. |
358358
| [`http.route`](../attributes-registry/http.md) | string | The matched route (path template in the format used by the respective server framework). See note below [3] | `/users/:userID?`; `{controller}/{action}/{id?}` | Conditionally Required: If and only if it's available |
359-
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [4] | `amqp`; `http`; `mqtt` | Recommended |
360-
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [5] | `3.1.1` | Recommended |
359+
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [4] | `http`; `spdy` | Recommended: if not default (`http`). |
360+
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [5] | `1.0`; `1.1`; `2`; `3` | Recommended |
361361
| [`server.address`](../general/attributes.md) | string | Name of the local HTTP server that received the request. [6] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | Opt-In |
362362
| [`server.port`](../general/attributes.md) | int | Port of the local HTTP server that received the request. [7] | `80`; `8080`; `443` | Opt-In |
363363
| [`url.scheme`](../url/url.md) | string | The [URI scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component identifying the used protocol. | `http`; `https` | Required |
@@ -465,8 +465,8 @@ of `[ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10
465465
| `error.type` | string | Describes a class of error the operation ended with. [1] | `timeout`; `name_resolution_error`; `500` | Conditionally Required: If request has ended with an error. |
466466
| [`http.request.method`](../attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | Required |
467467
| [`http.response.status_code`](../attributes-registry/http.md) | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: If and only if one was received/sent. |
468-
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [3] | `amqp`; `http`; `mqtt` | Recommended |
469-
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [4] | `3.1.1` | Recommended |
468+
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [3] | `http`; `spdy` | Recommended: if not default (`http`). |
469+
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [4] | `1.0`; `1.1`; `2`; `3` | Recommended |
470470
| [`server.address`](../general/attributes.md) | string | Host identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to. [5] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | Required |
471471
| [`server.port`](../general/attributes.md) | int | Port identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to. [6] | `80`; `8080`; `443` | Conditionally Required: [7] |
472472
| [`url.scheme`](../url/url.md) | string | The [URI scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component identifying the used protocol. | `https`; `ftp`; `telnet` | Required |
@@ -512,7 +512,8 @@ Tracing instrumentations that do so, MUST also set `http.request.method_original
512512
if it's sent in absolute-form
513513
- Host identifier of the `Host` header
514514

515-
SHOULD NOT be set if capturing it would require an extra DNS lookup.
515+
If an HTTP client request is explicitly made to an IP address, e.g. `http://x.x.x.x:8080`, then
516+
`server.address` SHOULD be the IP address `x.x.x.x`. A DNS lookup SHOULD NOT be used.
516517

517518
**[6]:** When [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource) is absolute URI, `server.port` MUST match URI port identifier, otherwise it MUST match `Host` header port identifier.
518519

@@ -560,8 +561,8 @@ This metric is optional.
560561
| `error.type` | string | Describes a class of error the operation ended with. [1] | `timeout`; `name_resolution_error`; `500` | Conditionally Required: If request has ended with an error. |
561562
| [`http.request.method`](../attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | Required |
562563
| [`http.response.status_code`](../attributes-registry/http.md) | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: If and only if one was received/sent. |
563-
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [3] | `amqp`; `http`; `mqtt` | Recommended |
564-
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [4] | `3.1.1` | Recommended |
564+
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [3] | `http`; `spdy` | Recommended: if not default (`http`). |
565+
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [4] | `1.0`; `1.1`; `2`; `3` | Recommended |
565566
| [`server.address`](../general/attributes.md) | string | Host identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to. [5] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | Required |
566567
| [`server.port`](../general/attributes.md) | int | Port identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to. [6] | `80`; `8080`; `443` | Conditionally Required: [7] |
567568
| [`url.scheme`](../url/url.md) | string | The [URI scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component identifying the used protocol. | `https`; `ftp`; `telnet` | Required |
@@ -607,7 +608,8 @@ Tracing instrumentations that do so, MUST also set `http.request.method_original
607608
if it's sent in absolute-form
608609
- Host identifier of the `Host` header
609610

610-
SHOULD NOT be set if capturing it would require an extra DNS lookup.
611+
If an HTTP client request is explicitly made to an IP address, e.g. `http://x.x.x.x:8080`, then
612+
`server.address` SHOULD be the IP address `x.x.x.x`. A DNS lookup SHOULD NOT be used.
611613

612614
**[6]:** When [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource) is absolute URI, `server.port` MUST match URI port identifier, otherwise it MUST match `Host` header port identifier.
613615

@@ -655,8 +657,8 @@ This metric is optional.
655657
| `error.type` | string | Describes a class of error the operation ended with. [1] | `timeout`; `name_resolution_error`; `500` | Conditionally Required: If request has ended with an error. |
656658
| [`http.request.method`](../attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | Required |
657659
| [`http.response.status_code`](../attributes-registry/http.md) | int | [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). | `200` | Conditionally Required: If and only if one was received/sent. |
658-
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [3] | `amqp`; `http`; `mqtt` | Recommended |
659-
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [4] | `3.1.1` | Recommended |
660+
| [`network.protocol.name`](../general/attributes.md) | string | [OSI application layer](https://osi-model.com/application-layer/) or non-OSI equivalent. [3] | `http`; `spdy` | Recommended: if not default (`http`). |
661+
| [`network.protocol.version`](../general/attributes.md) | string | Version of the protocol specified in `network.protocol.name`. [4] | `1.0`; `1.1`; `2`; `3` | Recommended |
660662
| [`server.address`](../general/attributes.md) | string | Host identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to. [5] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | Required |
661663
| [`server.port`](../general/attributes.md) | int | Port identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to. [6] | `80`; `8080`; `443` | Conditionally Required: [7] |
662664
| [`url.scheme`](../url/url.md) | string | The [URI scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component identifying the used protocol. | `https`; `ftp`; `telnet` | Required |
@@ -702,7 +704,8 @@ Tracing instrumentations that do so, MUST also set `http.request.method_original
702704
if it's sent in absolute-form
703705
- Host identifier of the `Host` header
704706

705-
SHOULD NOT be set if capturing it would require an extra DNS lookup.
707+
If an HTTP client request is explicitly made to an IP address, e.g. `http://x.x.x.x:8080`, then
708+
`server.address` SHOULD be the IP address `x.x.x.x`. A DNS lookup SHOULD NOT be used.
706709

707710
**[6]:** When [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource) is absolute URI, `server.port` MUST match URI port identifier, otherwise it MUST match `Host` header port identifier.
708711

‎docs/http/http-spans.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ This span type represents an outbound HTTP request. There are two ways this can
240240

241241
For an HTTP client span, `SpanKind` MUST be `Client`.
242242

243-
<!-- semconv trace.http.client(full) -->
243+
<!-- semconv trace.http.client -->
244244
| Attribute | Type | Description | Examples | Requirement Level |
245245
|---|---|---|---|---|
246246
| [`http.resend_count`](../attributes-registry/http.md) | int | The ordinal number of request resending attempt (for any reason, including redirects). [1] | `3` | Recommended: if and only if request was retried. |
@@ -363,7 +363,7 @@ This span type represents an inbound HTTP request.
363363

364364
For an HTTP server span, `SpanKind` MUST be `Server`.
365365

366-
<!-- semconv trace.http.server(full) -->
366+
<!-- semconv trace.http.server -->
367367
| Attribute | Type | Description | Examples | Requirement Level |
368368
|---|---|---|---|---|
369369
| [`client.address`](../general/attributes.md) | string | Client address - domain name if available without reverse DNS lookup, otherwise IP address or Unix domain socket name. [1] | `83.164.160.102` | Recommended |

‎model/http-common.yaml

+6-1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ groups:
3838
- id: attributes.http.client
3939
type: attribute_group
4040
brief: 'HTTP Client attributes'
41+
extends: attributes.http.common
4142
attributes:
4243
- ref: server.address
4344
requirement_level: required
@@ -50,7 +51,8 @@ groups:
5051
if it's sent in absolute-form
5152
- Host identifier of the `Host` header
5253
53-
SHOULD NOT be set if capturing it would require an extra DNS lookup.
54+
If an HTTP client request is explicitly made to an IP address, e.g. `http://x.x.x.x:8080`, then
55+
`server.address` SHOULD be the IP address `x.x.x.x`. A DNS lookup SHOULD NOT be used.
5456
- ref: server.port
5557
requirement_level:
5658
conditionally_required: If not default (`80` for `http` scheme, `443` for `https`).
@@ -63,6 +65,7 @@ groups:
6365
- id: attributes.http.server
6466
type: attribute_group
6567
brief: 'HTTP Server attributes'
68+
extends: attributes.http.common
6669
attributes:
6770
- ref: http.route
6871
requirement_level:
@@ -91,6 +94,8 @@ groups:
9194
- Port identifier of the [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource)
9295
if it's sent in absolute-form.
9396
- Port identifier of the `Host` header
97+
requirement_level:
98+
recommended: If not default (`80` for `http` scheme, `443` for `https`).
9499
- ref: url.scheme
95100
requirement_level: required
96101
examples: ["http", "https"]

‎model/metrics/http.yaml

-78
Original file line numberDiff line numberDiff line change
@@ -5,93 +5,15 @@ groups:
55
extends: attributes.http.server
66
attributes:
77
- ref: server.address
8-
brief: >
9-
Name of the local HTTP server that received the request.
108
requirement_level: opt_in
11-
note: |
12-
Determined by using the first of the following that applies
13-
14-
- The [primary server name](/docs/http/http-spans.md#http-server-definitions) of the matched virtual host. MUST only
15-
include host identifier.
16-
- Host identifier of the [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource)
17-
if it's sent in absolute-form.
18-
- Host identifier of the `Host` header
19-
20-
SHOULD NOT be set if only IP address is available and capturing name would require a reverse DNS lookup.
21-
229
- ref: server.port
23-
brief: >
24-
Port of the local HTTP server that received the request.
2510
requirement_level: opt_in
26-
note: |
27-
Determined by using the first of the following that applies
28-
29-
- Port identifier of the [primary server host](/docs/http/http-spans.md#http-server-definitions) of the matched virtual host.
30-
- Port identifier of the [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource)
31-
if it's sent in absolute-form.
32-
- Port identifier of the `Host` header
33-
# todo (lmolkova) build tools don't populate grandparent attributes
34-
- ref: error.type
35-
requirement_level:
36-
conditionally_required: If request has ended with an error.
37-
examples: ['timeout', 'name_resolution_error', '500']
38-
note: |
39-
If the request fails with an error before response status code was sent or received,
40-
`error.type` SHOULD be set to exception type or a component-specific low cardinality error code.
41-
42-
If response status code was sent or received and status indicates an error according to [HTTP span status definition](/docs/http/http-spans.md),
43-
`error.type` SHOULD be set to the status code number (represented as a string), an exception type (if thrown) or a component-specific error code.
44-
45-
The `error.type` value SHOULD be predictable and SHOULD have low cardinality.
46-
Instrumentations SHOULD document the list of errors they report.
47-
48-
The cardinality of `error.type` within one instrumentation library SHOULD be low, but
49-
telemetry consumers that aggregate data from multiple instrumentation libraries and applications
50-
should be prepared for `error.type` to have high cardinality at query time, when no
51-
additional filters are applied.
52-
53-
If the request has completed successfully, instrumentations SHOULD NOT set `error.type`.
54-
- ref: http.request.method
55-
requirement_level: required
56-
- ref: http.response.status_code
57-
requirement_level:
58-
conditionally_required: If and only if one was received/sent.
59-
- ref: network.protocol.name
60-
- ref: network.protocol.version
6111

6212
- id: metric_attributes.http.client
6313
type: attribute_group
6414
brief: 'HTTP client attributes'
6515
extends: attributes.http.client
6616
attributes:
67-
# todo (lmolkova) build tools don't populate grandparent attributes
68-
- ref: http.request.method
69-
requirement_level: required
70-
- ref: http.response.status_code
71-
requirement_level:
72-
conditionally_required: If and only if one was received/sent.
73-
- ref: network.protocol.name
74-
- ref: network.protocol.version
75-
- ref: error.type
76-
requirement_level:
77-
conditionally_required: If request has ended with an error.
78-
examples: ['timeout', 'name_resolution_error', '500']
79-
note: |
80-
If the request fails with an error before response status code was sent or received,
81-
`error.type` SHOULD be set to exception type or a component-specific low cardinality error code.
82-
83-
If response status code was sent or received and status indicates an error according to [HTTP span status definition](/docs/http/http-spans.md),
84-
`error.type` SHOULD be set to the status code number (represented as a string), an exception type (if thrown) or a component-specific error code.
85-
86-
The `error.type` value SHOULD be predictable and SHOULD have low cardinality.
87-
Instrumentations SHOULD document the list of errors they report.
88-
89-
The cardinality of `error.type` within one instrumentation library SHOULD be low, but
90-
telemetry consumers that aggregate data from multiple instrumentation libraries and applications
91-
should be prepared for `error.type` to have high cardinality at query time, when no
92-
additional filters are applied.
93-
94-
If the request has completed successfully, instrumentations SHOULD NOT set `error.type`.
9517
- ref: url.scheme
9618
requirement_level: required
9719

‎model/trace/http.yaml

+1-46
Original file line numberDiff line numberDiff line change
@@ -36,27 +36,8 @@ groups:
3636
recommended: if and only if request was retried.
3737
- ref: server.address
3838
sampling_relevant: true
39-
requirement_level: required
40-
brief: >
41-
Host identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to.
42-
note: |
43-
Determined by using the first of the following that applies
44-
45-
- Host identifier of the [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource)
46-
if it's sent in absolute-form
47-
- Host identifier of the `Host` header
48-
49-
If an HTTP client request is explicitly made to an IP address, e.g. `http://x.x.x.x:8080`, then
50-
`server.address` SHOULD be the IP address `x.x.x.x`. A DNS lookup SHOULD NOT be used.
5139
- ref: server.port
5240
sampling_relevant: true
53-
requirement_level:
54-
conditionally_required: If not default (`80` for `http` scheme, `443` for `https`).
55-
brief: >
56-
Port identifier of the ["URI origin"](https://www.rfc-editor.org/rfc/rfc9110.html#name-uri-origin) HTTP request is sent to.
57-
note: >
58-
When [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource) is absolute URI, `server.port` MUST match
59-
URI port identifier, otherwise it MUST match `Host` header port identifier.
6041
- ref: network.peer.address
6142
requirement_level:
6243
recommended: If different than `server.address`.
@@ -67,41 +48,17 @@ groups:
6748
sampling_relevant: true
6849
requirement_level: required
6950

70-
7151
- id: trace.http.server
7252
type: span
7353
extends: attributes.http.server
7454
span_kind: server
7555
brief: 'Semantic Convention for HTTP Server'
7656
attributes:
57+
- ref: http.route
7758
- ref: server.address
78-
requirement_level: recommended
7959
sampling_relevant: true
80-
brief: >
81-
Name of the local HTTP server that received the request.
82-
note: |
83-
Determined by using the first of the following that applies
84-
85-
- The [primary server name](/docs/http/http-spans.md#http-server-definitions) of the matched virtual host. MUST only
86-
include host identifier.
87-
- Host identifier of the [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource)
88-
if it's sent in absolute-form.
89-
- Host identifier of the `Host` header
90-
91-
SHOULD NOT be set if only IP address is available and capturing name would require a reverse DNS lookup.
9260
- ref: server.port
9361
sampling_relevant: true
94-
requirement_level:
95-
recommended: If not default (`80` for `http` scheme, `443` for `https`).
96-
brief: >
97-
Port of the local HTTP server that received the request.
98-
note: |
99-
Determined by using the first of the following that applies
100-
101-
- Port identifier of the [primary server host](/docs/http/http-spans.md#http-server-definitions) of the matched virtual host.
102-
- Port identifier of the [request target](https://www.rfc-editor.org/rfc/rfc9110.html#target.resource)
103-
if it's sent in absolute-form.
104-
- Port identifier of the `Host` header
10562
- ref: network.local.address
10663
requirement_level: opt_in
10764
brief: Local socket address. Useful in case of a multi-IP host.
@@ -131,5 +88,3 @@ groups:
13188
sampling_relevant: true
13289
- ref: url.scheme
13390
sampling_relevant: true
134-
requirement_level: required
135-
examples: ["http", "https"]

0 commit comments

Comments
 (0)
Please sign in to comment.