semantic-conventions/model/client.yaml

47 lines
2.4 KiB
YAML

groups:
- id: client
prefix: client
type: attribute_group
brief: >
These attributes may be used to describe the client in a connection-based network interaction
where there is one side that initiates the connection (the client is the side that initiates the connection).
This covers all TCP network interactions since TCP is connection-based and one side initiates the
connection (an exception is made for peer-to-peer communication over TCP where the "user-facing" surface of the
protocol / API does not expose a clear notion of client and server).
This also covers UDP network interactions where one side initiates the interaction, e.g. QUIC (HTTP/3) and DNS.
attributes:
- id: address
type: string
brief: Client address - domain name if available without reverse DNS lookup, otherwise IP address or Unix domain socket name.
note: >
When observed from the server side, and when communicating through an intermediary, `client.address` SHOULD represent
the client address behind any intermediaries (e.g. proxies) if it's available.
examples: ['/tmp/my.sock', '10.1.2.80']
- id: port
type: int
brief: Client port number.
examples: [65123]
note: >
When observed from the server side, and when communicating through an intermediary, `client.port` SHOULD represent
the client port behind any intermediaries (e.g. proxies) if it's available.
- id: socket.address
type: string
brief: Client address of the socket connection - IP address or Unix domain socket name.
note: >
When observed from the server side, this SHOULD represent the immediate client peer address.
When observed from the client side, this SHOULD represent the physical client address.
examples: ['/tmp/my.sock', '127.0.0.1']
requirement_level:
recommended: If different than `client.address`.
- id: socket.port
type: int
brief: Client port number of the socket connection.
note: >
When observed from the server side, this SHOULD represent the immediate client peer port.
When observed from the client side, this SHOULD represent the physical client port.
examples: [35555]
requirement_level:
recommended: If different than `client.port`.