Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add instrumentation library info as semantic convention attributes #746

Closed
iNikem opened this issue Jul 28, 2020 · 5 comments · Fixed by #801
Closed

Add instrumentation library info as semantic convention attributes #746

iNikem opened this issue Jul 28, 2020 · 5 comments · Fixed by #801
Labels
area:sdk Related to the SDK area:semantic-conventions Related to semantic conventions priority:p3 Lowest priority level release:required-for-ga Must be resolved before GA release, or nice to have before GA spec:trace Related to the specification/trace directory

Comments

@iNikem
Copy link
Contributor

iNikem commented Jul 28, 2020

TracerProvider.getTracer API defines 2 parameters: instrumentation library name and version. This information is later available as part of OTLP. But at the moment it is not available in any other protocols. Thus any clients/backends who still use Zipkin/Jaeger protocol don't have access to this information.

I propose to add new optional attributes telemetry.instrumentation.name and telemetry.instrumentation.version to hold instrumentation library information.

@iNikem iNikem added the spec:trace Related to the specification/trace directory label Jul 28, 2020
@Oberon00
Copy link
Member

This seems to be an instance of #660. @arminru suggested there (#660 (comment)) do define a reserved attribute name for each piece of data that is not already an attribute.

@Oberon00 Oberon00 added the area:semantic-conventions Related to semantic conventions label Jul 28, 2020
@carlosalberto carlosalberto added the area:api Cross language API specification issue label Jul 28, 2020
@bogdandrutu bogdandrutu added the priority:p3 Lowest priority level label Jul 28, 2020
@andrewhsu andrewhsu added the release:required-for-ga Must be resolved before GA release, or nice to have before GA label Jul 28, 2020
@jkwatson
Copy link
Contributor

Are you asking to have a specification for how some exporters will treat this information? That's not really a "semantic attribute" in that it shouldn't be populated by instrumentation authors. I recommend changing the title of this Issue, and removing the area:api tag.

@jmacd
Copy link
Contributor

jmacd commented Jul 31, 2020

Related attempt to treat these properties as ordinary attributes: open-telemetry/opentelemetry-proto#150

@Oberon00 Oberon00 added area:sdk Related to the SDK and removed area:api Cross language API specification issue labels Jul 31, 2020
@Oberon00
Copy link
Member

Since we have no label for exporters, I added the sdk label. But if we are going to reserve the attributes, it's also a semantic convention concern, namely that by convention you should not set these attributes yourself but keep them free for exporter's use.

@iNikem
Copy link
Contributor Author

iNikem commented Aug 14, 2020

I have submitted to PRs to address this issue: #800 and #801 . The proposed solution just augments existing protocol conversion rules from OTLP to Zipkin and Jaeger. This covers all possible formats of trace data on the wire and effectively solves this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:sdk Related to the SDK area:semantic-conventions Related to semantic conventions priority:p3 Lowest priority level release:required-for-ga Must be resolved before GA release, or nice to have before GA spec:trace Related to the specification/trace directory
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants