-
Notifications
You must be signed in to change notification settings - Fork 897
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
Clarify SDK behavior for Instrument Advisory Parameter #4389
base: main
Are you sure you want to change the base?
Conversation
configured a View with specific bucket boundaries, those boundaries should take | ||
precedence. In the absence of such a configuration, the advisory parameter | ||
should be used. If neither is provided, the default bucket boundaries must be | ||
applied. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the last sentence may be too obvious that it may be omitted...But I am okay with being more explicit.
Co-authored-by: Trask Stalnaker <[email protected]>
If a [View](#view) is configured with the same settings as advisory parameters, | ||
the View MUST take precedence over the advisory parameters. | ||
|
||
#### Instrument advisory parameter: `ExplicitBucketBoundaries` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We generally haven't explicitly documented the API methods or parameters in the SDK specification. It is already stated that the SDK is an implementation of the API. I think the general statement above "If a View is configured with the same settings as advisory parameters,
the View MUST take precedence over the advisory parameters." is already enough to clarify the precedence ordering.
I don't think this section, or the one below, is necessary unless is is clarifying something additional (other than precedence or what is already in the API).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/api.md#instrument-advisory-parameters The API doc says "OpenTelemetry SDKs MUST handle advisory parameters as described here", and that here is what this section.
I am okay with just keeping the general statement about view takes precedency alone and remove rest. Will see if there are other feedback on this. I have seen recently that we try to be more explicit in SDK specs (eg: Logger.Enabled), but does not necessarily have to do it for advisory.
Also Fixes #4317
Changes
Mostly editorial, to specify SDK behavior for Advisory Parameters, explicitly calling out that SDK MUST give precedence to View config over InstrumentAdvisory. I believe this is already the intention, but was less specified. Though some wordings exist in the View spec about attribute-keys, no mention about Histogram buckets..
CHANGELOG.md
file updated for non-trivial changesspec-compliance-matrix.md
updated if necessary