open-telemetry / opentelemetry-dotnet-contrib

This repository contains set of components extending functionality of the OpenTelemetry .NET SDK. Instrumentation libraries, exporters, and other components can find their home here.
https://opentelemetry.io
Apache License 2.0
421 stars 251 forks source link

Semantic convention package should be used by libraries #1847

Open thompson-tomo opened 1 month ago

thompson-tomo commented 1 month ago

Component

None

Is your feature request related to a problem?

Duplicated code

What is the expected behavior?

That no projects redefine semantic convention strings & instead they leverage the appropriate package.

Note it needs to be determined how deprecation are handled as otherwise we could end up with breaking changes

Which alternative solutions or features have you considered?

Allow the duplication and effectively have very little use for the conventions package

Additional context

No response

thompson-tomo commented 1 month ago

My proposal for discontinuation would be to use the obselete attribute & potentially make our our own attributes for experimental/opt-in which generate build info/warnings etc

martinjt commented 3 weeks ago

There's an ongoing project for generating the Semantic convention packages. There's lots of implications of Obsolete, duplicates, and how package versions works across multiple languages, which is why it's taking a while.

When we have moved to that, we'll be looking at whether we should use the package in our instrumentations.

CodeBlanch commented 2 weeks ago

potentially make our our own attributes for experimental/opt-in which generate build info/warnings

Just FYI .NET 8 added ExperimentalAttribute.

thompson-tomo commented 2 weeks ago

yeap i noticed in one of my recent projects, so that would certainly be useful we just need to establish a way for the class generator to populate the correct attributes on the properties to ensure it is a maintainable process.