* Avoid using gRPC when generic RPC systems have same properties
The concept of "streaming" is supported by multiple protocols including gRPC, but also others.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* Update specification/trace/semantic_conventions/rpc.md
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* Remove rpc.jsonrpc.method, clarify rpc.method instead.
* Add PR#.
* Clarify client side code.namespace/function.
* Use "ref" instead of "constraint: any_of".
This should be changed back once
https://github.com/open-telemetry/build-tools/issues/33
is resolved & the updated build tools available.
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* Have consistent formatting for semantic convention enums
Currently, semantic convention enum values are not consistent.
For example, os.type values are all capitals whereas
cloud.infrastructure_service values are underscored lowercase.
This change improves the inconsistencies.
We also expect language implementations to autogenerate code
from enum values. Each language has their own conventions for
constant variable identifiers and we expect the consistent
formatting is going to help the language implementors.
Fixes#1519.
* Updating gRPC status semantic conventions
Since the simplification of trace status codes,
they no longer align with gRPC.
Clarifying the expected status code field for gRPC, as
well as the mappings between gRPC and OpenTelemetry status.
* Adding changelog entry
* Addressing feedback
Clarifying that gRPC spans should include the status code number,
rather than leave it ambiguous.
Adding gRPC semantic conventions in the yaml files to reflect these
changes.
* adding trailing whitespace
* Apply suggestions from code review
Co-authored-by: Christian Neumüller <christian+github@neumueller.me>
* addressing feedback
Ran table-generation to ensure that semantic conventions are added.
Removed tags for rpc.grpc yaml for now (not explicitly used).
* Update specification/trace/semantic_conventions/rpc.md
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* Addressing feedback
re-generating TOC with markdown-toc
There was a conflict with sub-headings matching the same string. As such
qualified all headings.
* Switching gRPC status_code type to enum
gRPC's status_code code is better expressed as an enum.
Co-authored-by: Christian Neumüller <christian+github@neumueller.me>
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* Generalize RPC semantic conventions to allow non-gRPC spans
* Add method name to attributes
* Require specifying `net.transport` for non-IP connections
* Do not require providing the port when it's not available
* Add package name to rpc.service and make it optional when not applicable or unknown
* Add note and example distinguishing the service.name resource attribute from rpc.service
* Distinguish RPC spans from HTTP spans
* Improve wording
Co-authored-by: Christian Neumüller <christian+github@neumueller.me>
* Improve wording
* Improve wording even more
Co-authored-by: Christian Neumüller <christian+github@neumueller.me>
* Clarify span name format
* Update changelog
* rpc.method: required -> recommended
* rpc.service: required -> recommended
Co-authored-by: Christian Neumüller <christian+github@neumueller.me>