Merge rpc.method and rpc.service into fully-qualified rpc.method, clarify span name and possible high cardinality #3223
Merged
lmolkova merged 10 commits intoopen-telemetry:mainfrom Jan 7, 2026
Conversation
lmolkova
commented
Dec 16, 2025
rpc.method and rpc.service into fully-qualified rpc.method.name attribute, clarify possible high cardinality orpc.method and rpc.service into fully-qualified rpc.method.name, clarify span name and possible high cardinality
lmolkova
commented
Dec 16, 2025
Merged
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request refactors RPC semantic conventions by merging the previously separate rpc.method and rpc.service attributes into a single fully-qualified rpc.method.name attribute (e.g., com.example.ExampleService/exampleMethod). This change addresses issues #2863 and #3196 by simplifying the attribute model while providing clear guidance on handling potentially unbounded cardinality through a standardized _OTHER mechanism similar to HTTP conventions.
Key Changes
- Attribute consolidation: Merged
rpc.methodandrpc.serviceintorpc.method.namecontaining the fully-qualified method name - Cardinality control: Introduced
rpc.method.name_originaland_OTHERsentinel value to handle unrecognized methods that could cause cardinality explosions - Updated span naming: Clarified that span names should use
{rpc.method.name}when available and not_OTHER, otherwise fall back to{rpc.system.name}
Reviewed changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| model/rpc/registry.yaml | Defined new rpc.method.name and rpc.method.name_original attributes with detailed cardinality guidance |
| model/rpc/deprecated/registry-deprecated.yaml | Deprecated rpc.method and rpc.service with migration guidance |
| model/rpc/spans.yaml | Updated all RPC span definitions to use new attributes; removed obsolete rpc_service.server group |
| model/rpc/metrics.yaml | Updated RPC metrics to reference rpc.method.name instead of deprecated attributes |
| model/rpc/common.yaml | Updated common RPC attributes to reference new attribute names |
| docs/rpc/rpc-spans.md | Rewrote span naming section and updated all attribute tables with new attributes and cardinality notes |
| docs/rpc/rpc-metrics.md | Updated all metric attribute tables to use rpc.method.name |
| docs/rpc/grpc.md | Updated gRPC-specific conventions with new attributes and detailed cardinality guidance |
| docs/rpc/connect-rpc.md | Updated Connect RPC conventions with new attributes |
| docs/rpc/json-rpc.md | Updated JSON-RPC conventions with specific opt-in guidance due to protocol's unbounded method names |
| docs/registry/attributes/rpc.md | Updated attribute registry documentation with new definitions and deprecated old attributes |
| docs/object-stores/s3.md | Marked deprecated rpc.method and rpc.service attributes |
| docs/db/dynamodb.md | Marked deprecated rpc.method and rpc.service attributes in all DynamoDB operation tables |
| docs/cloud-providers/aws-sdk.md | Marked deprecated rpc.method and rpc.service attributes |
| .chloggen/rpc-method-service.yaml | Added changelog entry documenting the breaking change |
maryliag
reviewed
Dec 18, 2025
Co-authored-by: Matthew Hensley <130569+matt-hensley@users.noreply.github.com>
maryliag
approved these changes
Jan 5, 2026
matt-hensley
approved these changes
Jan 7, 2026
rpc.method and rpc.service into fully-qualified rpc.method.name, clarify span name and possible high cardinality rpc.method and rpc.service into fully-qualified rpc.method, clarify span name and possible high cardinality
trask
approved these changes
Jan 7, 2026
Cirilla-zmh
pushed a commit
to Cirilla-zmh/semantic-conventions
that referenced
this pull request
Feb 3, 2026
…`, clarify span name and possible high cardinality (open-telemetry#3223) Co-authored-by: Matthew Hensley <130569+matt-hensley@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #3196, fixes #2863
rpc.methodandrpc.servicein favor of newrpc.method.namehttp.request.method)rpc.method.name_originalsimilarly tohttp.request.method_original