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

Is it possible to rename "instrumentation library" to "instrumentation scope"? #2310

Closed
Tracked by #2203
tigrannajaryan opened this issue Dec 6, 2021 · 4 comments
Closed
Tracked by #2203

Comments

@tigrannajaryan
Copy link
Member

This initially came from a discussion about introducing Logger Name.

While discussing the issue during the spec SIG meeting we came to a conclusion that the intent for "instrumentation library" was actually to have an "instrumentation scope".

The "instrumentation library" is currently used throughout the spec API and SDK. We want to explore if it is possible to rename "instrumentation library" to "instrumentation scope" without breaking existing stability guarantees.

This issue is a questions for the maintainers of this repo: are we able to do this in a non-breaking manner?

Note: this should be only done if it is not a breaking change. We must continue honouring our stability guarantees.

Warning: please don't make the actual change yet. We need to confirm first that it is possible to make this change everywhere before moving forward.

Spec issue recorded here: open-telemetry/opentelemetry-specification#2203

@owais
Copy link
Contributor

owais commented Dec 7, 2021

This will be a breaking change technically for at least the get_tracer method in the Python API.

https://github.com/open-telemetry/opentelemetry-python/blob/main/opentelemetry-api/src/opentelemetry/trace/__init__.py#L228

@tigrannajaryan
Copy link
Member Author

Is changing the name of the function parameter a breaking change? Is it because get_tracer can be called with named arguments?

If we introduce a new additional function, e.g. get_scoped_tracer(scope_name) it won't be a breaking change, right? Will it be possible to support both get_trace and get_scoped_tracer in such a way that doesn't require breaking changes elsewhere?

Also, interestingly it is called instrumenting_module_name, which is already a slight deviation from library.

@tigrannajaryan
Copy link
Member Author

It appears the conclusion of many SDKs is that this is not a possible change. Closing. Thanks for checking.

@owais
Copy link
Contributor

owais commented Dec 7, 2021

Is changing the name of the function parameter a breaking change? Is it because get_tracer can be called with named arguments?

Yes. FWIW, I think it is a lot more common to call it with positional arguments but it'd still be breaking.

If we introduce a new additional function, e.g. get_scoped_tracer(scope_name) it won't be a breaking change, right? Will it be possible to support both get_trace and get_scoped_tracer in such a way that doesn't require breaking changes elsewhere?

It should be possible. I don't recall using this name anywhere else but will need a more thorough investigation.

Also, interestingly it is called instrumenting_module_name, which is already a slight deviation from library.

Yeah, not sure how that got in :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants