-
Notifications
You must be signed in to change notification settings - Fork 975
Have InstrumentationScope use normative language #4488
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
Merged
carlosalberto
merged 23 commits into
open-telemetry:main
from
carlosalberto:normative-instr-scope
Jun 6, 2025
Merged
Changes from 15 commits
Commits
Show all changes
23 commits
Select commit
Hold shift + click to select a range
f45655b
Have InstrumentationScope use normative language.
carlosalberto c1a4920
Fix typos.
carlosalberto c84fa83
More typos.
carlosalberto 484313b
Merge branch 'main' into normative-instr-scope
carlosalberto ce07b85
Update specification/common/README.md
carlosalberto 51610fd
Move instrumentation-scope to its own file.
carlosalberto ff6d662
Add examples section.
carlosalberto b2fd801
Fix typo.
carlosalberto 78e3911
Feedback.
carlosalberto caa53d0
More feedback.
carlosalberto 5872000
More feedback.
carlosalberto 333bcbe
Update specification/common/instrumentation-scope.md
carlosalberto 23db5e8
Instrumentation instead of Instrumented.
carlosalberto 74d2194
Merge branch 'main' into normative-instr-scope
carlosalberto b2b4e2d
Add a CHANGELOG entry.
carlosalberto ccc4e75
Update CHANGELOG.md
carlosalberto abcb1c7
Fix broken link.
carlosalberto 158d2d2
Update specification/common/instrumentation-scope.md
carlosalberto 3ebe059
Update specification/common/instrumentation-scope.md
carlosalberto c071ba2
Relax restrictions to allow implementations to be updated.
carlosalberto 5c71c39
More feedback.
carlosalberto c2b2ba9
Relax the name requirement to match what we have in other parts.
carlosalberto d07707c
Merge branch 'main' into normative-instr-scope
carlosalberto File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,52 @@ | ||
| <!--- Hugo front matter used to generate the website version of this page: | ||
| linkTitle: Instrumentation Scope | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Don't include a |
||
| ---> | ||
|
|
||
| # Instrumentation Scope | ||
|
|
||
| **Status**: [Stable](../document-status.md) | ||
|
|
||
| A logical unit of software, with which the emitted telemetry can be | ||
|
carlosalberto marked this conversation as resolved.
Outdated
|
||
| associated. It is typically the developer's choice to decide what denotes a | ||
| reasonable instrumentation scope. The most common approach is to use | ||
| the name and version of the [instrumentation library](../glossary.md#instrumentation-library), | ||
| with any additional identifying information as part of the scope's attributes. | ||
| Other software components can be used too to get name, version and additional attributes, e.g. | ||
| a module, a package, a class or a plugin. | ||
|
|
||
| The instrumentation scope is defined by the | ||
| (name,version,schema_url,attributes) tuple where version, schema_url, and | ||
|
pellared marked this conversation as resolved.
|
||
| attributes are optional. This tuple MUST uniquely identify the logical unit of | ||
|
carlosalberto marked this conversation as resolved.
Outdated
|
||
| software that emits the telemetry. A typical approach to ensure uniqueness is to | ||
| use the fully qualified name of the emitting software unit (e.g. fully qualified library | ||
| name or fully qualified class name). | ||
|
|
||
| The instrumentation scope MUST be used to obtain a | ||
| [Tracer, Meter, or Logger](../glossary.md#tracer-name--meter-name--logger-name). | ||
|
carlosalberto marked this conversation as resolved.
Outdated
|
||
|
|
||
| The instrumentation scope's name MUST be specified to identify the `InstrumentationScope` | ||
|
carlosalberto marked this conversation as resolved.
Outdated
|
||
| name. It SHOULD be set to the empty string as last fallback. | ||
|
|
||
| The instrumentation scope's optional Schema URL MUST identify the [Telemetry | ||
|
carlosalberto marked this conversation as resolved.
Outdated
|
||
| Schema](../schemas/README.md) that the instrumentation's emitted | ||
| telemetry conforms to. | ||
|
|
||
| The instrumentation scope's optional attributes provide additional information about | ||
|
mx-psi marked this conversation as resolved.
|
||
| the scope. For example for a scope that specifies an | ||
|
carlosalberto marked this conversation as resolved.
|
||
| instrumentation library an additional attribute may be recorded to denote the URL of the | ||
| repository URL the library's source code is stored. | ||
|
|
||
| ## Examples | ||
|
|
||
| Here is a non comprehensive list of usage scenarios: | ||
|
|
||
| * Generic instrumentation library with its name, version and attributes containing | ||
| additional library information. | ||
| * Database access instrumented with its own name and version (e.g. `db.system.name`). | ||
|
carlosalberto marked this conversation as resolved.
|
||
| This can be leveraged by APIs abstracting access to different underlying databases, | ||
| such as JDBC or SqlAlchemy. | ||
| * Client consuming or producing information, using its name, version and `id` to set | ||
| `InstrumentationScope`. | ||
| * Internal application components emitting their own telemetry, relying on | ||
| `InstrumentationScope` attributes to differentiate themselves in case multiple | ||
| instances of the same type exist. | ||
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
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
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
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
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
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
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
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
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
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.