Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
b555081
Align network attributes with ECS
Apr 14, 2023
cb420e2
up
Apr 15, 2023
fbcf76f
changelog
Apr 15, 2023
5adafdd
nits and missing parts
Apr 15, 2023
1e4aed9
lint
Apr 15, 2023
9ef2caf
add source and destination and fix some nits
Apr 20, 2023
a479795
Update specification/trace/semantic_conventions/span-general.md
Apr 20, 2023
795eee7
Update semantic_conventions/trace/source.yaml
Apr 20, 2023
4342d40
cleanups and move new conventions to comon folder
Apr 20, 2023
264214e
bookmarks
Apr 20, 2023
7cc0802
lint
Apr 20, 2023
f52780c
Update CHANGELOG.md
Apr 21, 2023
af08a7f
Update schemas/1.21.0
Apr 21, 2023
ed33462
Update schemas/1.21.0
Apr 21, 2023
f5cffd7
lint
Apr 21, 2023
7e5c5aa
add client.address and port and add client to rpc trace attributes
Apr 21, 2023
eaa1f87
more nits
Apr 22, 2023
582ead7
more nits
Apr 22, 2023
f92c55d
lint
Apr 22, 2023
e7fbbe1
up
Apr 22, 2023
855d546
move deprecated attributes to a different folder and some cleanups
Apr 24, 2023
3c7c7f1
move server.socket.* from common http attributes to client and server
Apr 25, 2023
22f8e18
PR feedback
Apr 26, 2023
f47e2b1
Apply suggestions from code review
Apr 28, 2023
d6f0a36
regenerate md
Apr 28, 2023
c37b62b
feedback: transformation, server.address for IP
Apr 28, 2023
bbb9f10
remove only from .address condition
Apr 28, 2023
9030cde
Merge branch 'main' into ecs-net-attributes
reyang May 1, 2023
8dedbee
Clarify client/server/source/destination
trask May 2, 2023
41056bb
Merge branch 'main' into ecs-net-attributes
May 8, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
up
  • Loading branch information
Liudmila Molkova committed Apr 28, 2023
commit cb420e22e68c1c13d34b93969a3152f409a23222
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,15 @@ release.
([#3390](https://github.com/open-telemetry/opentelemetry-specification/pull/3390))
- BREAKING: Remove `messaging.consumer.id`, make `messaging.client_id` generic
([#3336](https://github.com/open-telemetry/opentelemetry-specification/pull/3336))
- Rename `net.peer.*`, `net.host.*`, and `net.sock.*` attributes to align with ECS
([#TODO](https://github.com/open-telemetry/opentelemetry-specification/pull/TODO))
BREAKING: rename `net.peer.name` and `net.host.name` to `server.address`,
`net.peer.port` and `net.host.port` to `server.port`,
`net.sock.peer.addr` to `server.socket.address` on client side and to `client.socket.address` on server side,
`net.sock.peer.port` to `server.socket.port` on client side and to `client.socket.port` on server side,
`net.sock.peer.name` to `server.socket.domain`,
`net.sock.host.addr` to `server.socket.address`,
`net.sock.host.port` to `server.socket.port`

### Compatibility

Expand Down
4 changes: 2 additions & 2 deletions semantic_conventions/http-common.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ groups:
conditionally_required: If and only if one was received/sent.
brief: '[HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6).'
examples: [200]
- ref: network.protocol.name
- ref: net.protocol.name
examples: ['http', 'spdy']
requirement_level:
recommended: if not default (`http`).
- ref: network.protocol.version
- ref: net.protocol.version
examples: ['1.0', '1.1', '2.0']

- id: attributes.http.client
Expand Down
24 changes: 12 additions & 12 deletions semantic_conventions/metrics/http.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ groups:
# todo (lmolkova) build tools don't populate grandparent attributes
- ref: http.method
- ref: http.status_code
- ref: network.protocol.name
- ref: network.protocol.version
- ref: net.protocol.name
- ref: net.protocol.version

- id: metric.http.server.active_requests
type: metric
Expand Down Expand Up @@ -62,8 +62,8 @@ groups:
# todo (lmolkova) build tools don't populate grandparent attributes
- ref: http.method
- ref: http.status_code
- ref: network.protocol.name
- ref: network.protocol.version
- ref: net.protocol.name
- ref: net.protocol.version

- id: metric.http.server.response.size
type: metric
Expand All @@ -76,8 +76,8 @@ groups:
attributes:
- ref: http.method
- ref: http.status_code
- ref: network.protocol.name
- ref: network.protocol.version
- ref: net.protocol.name
- ref: net.protocol.version

- id: metric.http.client.duration
type: metric
Expand All @@ -89,8 +89,8 @@ groups:
attributes:
- ref: http.method
- ref: http.status_code
- ref: network.protocol.name
- ref: network.protocol.version
- ref: net.protocol.name
- ref: net.protocol.version
- ref: server.socket.address

- id: metric.http.client.request.size
Expand All @@ -104,8 +104,8 @@ groups:
attributes:
- ref: http.method
- ref: http.status_code
- ref: network.protocol.name
- ref: network.protocol.version
- ref: net.protocol.name
- ref: net.protocol.version
- ref: server.socket.address

- id: metric.http.client.response.size
Expand All @@ -119,6 +119,6 @@ groups:
attributes:
- ref: http.method
- ref: http.status_code
- ref: network.protocol.name
- ref: network.protocol.version
- ref: net.protocol.name
- ref: net.protocol.version
- ref: server.socket.address
4 changes: 2 additions & 2 deletions semantic_conventions/trace/database.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -242,12 +242,12 @@ groups:
tag: connection-level
- ref: server.socket.port
tag: connection-level
- ref: network.type
- ref: net.sock.family
tag: connection-level
- ref: server.socket.domain
requirement_level:
recommended: If different than `server.address` and if `server.socket.address` is set.
- ref: network.transport
- ref: net.transport
tag: connection-level
requirement_level:
conditionally_required: If database type is in-process (`"inproc"`), recommended for other database types.
Expand Down
28 changes: 4 additions & 24 deletions semantic_conventions/trace/general.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,6 @@ groups:
brief: >
These attributes may be used for any network related operation.
attributes:
- id: transport
type: string
stability: deprecated
brief: Deprecated, use `network.transport`.
examples: ['ip_tcp']
- id: protocol.name
type: string
stability: deprecated
brief: Deprecated, use `network.protocol.name`.
examples: ['amqp']
- id: protocol.version
type: string
stability: deprecated
brief: Deprecated, use `network.protocol.version`.
examples: ['1.0']
- id: sock.peer.name
type: string
stability: deprecated
Expand All @@ -36,11 +21,6 @@ groups:
stability: deprecated
examples: [65531]
brief: Deprecated, use `server.socket.port` on client spans and `client.socket.port` on server spans.
- id: sock.family
type: string
stability: deprecated
brief: Deprecated, use `network.type`.
examples: ['inet6']
- id: peer.name
type: string
stability: deprecated
Expand Down Expand Up @@ -73,7 +53,7 @@ groups:
examples: [8080]

- id: network-core
prefix: network
prefix: net
type: attribute_group
brief: >
These attributes may be used for any network related operation.
Expand Down Expand Up @@ -110,10 +90,10 @@ groups:
brief: 'Version of the application layer protocol used. See note below.'
examples: '3.1.1'
note: >
`network.protocol.version` refers to the version of the protocol used and might be
`net.protocol.version` refers to the version of the protocol used and might be
different from the protocol client's version. If the HTTP client used has a version
of `0.27.2`, but sends HTTP version `1.1`, this attribute should be set to `1.1`.
- id: type
- id: sock.family
type:
allow_custom_values: true
members:
Expand All @@ -130,7 +110,7 @@ groups:
conditionally_required: >
If different than `inet` and if any of `server.nat.address` or `client.address` are set.
Consumers of telemetry SHOULD accept both IPv4 and IPv6 formats for the address in `server.nat.address` and `client.address`
if `network.type` is not set. This is to support instrumentations that follow previous versions
if `net.sock.family` is not set. This is to support instrumentations that follow previous versions
of this document.
brief: >
Protocol [address family](https://man7.org/linux/man-pages/man7/address_families.7.html) which is used for communication.
Expand Down
2 changes: 1 addition & 1 deletion semantic_conventions/trace/http.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ groups:
- ref: server.socket.address
- ref: server.socket.port
- ref: server.socket.domain
- ref: network.type
- ref: net.sock.family
examples: ['inet', 'inet6']
- ref: user_agent.original

Expand Down
6 changes: 3 additions & 3 deletions semantic_conventions/trace/messaging.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -150,15 +150,15 @@ groups:
tag: connection-level
- ref: server.socket.port
tag: connection-level
- ref: network.type
- ref: net.sock.family
tag: connection-level
- ref: server.socket.domain
tag: connection-level
requirement_level:
recommended: If different than `server.address` and if `server.socket.address` is set.
- ref: network.protocol.name
- ref: net.protocol.name
examples: ['amqp', 'mqtt']
- ref: network.protocol.version
- ref: net.protocol.version

- id: messaging.producer
prefix: messaging
Expand Down
6 changes: 3 additions & 3 deletions semantic_conventions/trace/rpc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ groups:
- ref: server.socket.port
requirement_level:
recommended: If different than `server.port` and if `server.socket.address` is set.
- ref: network.type
- ref: net.sock.family
requirement_level:
conditionally_required: If and only if `server.socket.address` is set.
- ref: server.socket.domain
Expand All @@ -70,7 +70,7 @@ groups:
- ref: server.port
requirement_level:
conditionally_required: See below
- ref: network.transport
- ref: net.transport
requirement_level:
conditionally_required: See below
constraints:
Expand All @@ -88,7 +88,7 @@ groups:
- ref: server.address
- ref: server.socket.address
- ref: server.socket.port
- ref: network.type
- ref: net.sock.family

- id: rpc.grpc
prefix: rpc.grpc
Expand Down
2 changes: 1 addition & 1 deletion specification/common/attribute-requirement-level.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ For example, Metric attributes that may have high cardinality can only be define

A semantic convention that refers to an attribute from another semantic convention MAY modify the requirement level within its own scope. Otherwise, requirement level from the referred semantic convention applies.

For example, [Database semantic convention](../trace/semantic_conventions/database.md) references `network.transport` attribute defined in [General attributes](../trace/semantic_conventions/span-general.md) with `Conditionally Required` level on it.
For example, [Database semantic convention](../trace/semantic_conventions/database.md) references `net.transport` attribute defined in [General attributes](../trace/semantic_conventions/span-general.md) with `Conditionally Required` level on it.

## Required

Expand Down
Loading