-
Notifications
You must be signed in to change notification settings - Fork 324
Description
As discussed in the last Service and Deployment Semconv SIG meeting...
Motivation
service.peer.* can only describe one remote service at a time. That falls apart when observing a connection from the middle, where you want to capture both the upstream client service and the downstream server service on the same signal.
server.*/client.* already handle this nicely (e.g. server.address, client.address), with the nice property that each attribute means the same thing no matter who's observing.
Proposal
Deprecate service.peer.name/.namespace and replace with:
| Current (deprecated) | Client-side replacement | Server-side replacement |
|---|---|---|
service.peer.name |
server.service.name |
client.service.name |
service.peer.namespace |
server.service.namespace |
client.service.namespace |
Open question
Unlike client.address/server.address, where the meaning doesn't depend on observer position, service.name already exists as a resource attribute. So in practice we'd end up with:
client.service.name/service.name(on a server span), orservice.name/server.service.name(on a client span)
while from the middle it'd be:
client.service.name/server.service.name
So we lose some of the symmetry that makes client.*/server.* nice.
Metadata
Metadata
Assignees
Type
Projects
Status