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

Support "advisory parameters" for alternate Explicit Bucket Boundaries #15

Open
francoposa opened this issue Nov 24, 2024 · 0 comments
Open

Comments

@francoposa
Copy link
Owner

francoposa commented Nov 24, 2024

Having a highest bucket boundary of only 10 seconds for request duration is absurd for HTTP requests.

I have not quite grokked the dense manner of speaking in the OTEL spec docs yet, but what I think I understand so far is:

  1. It is within spec to allow use of other bucket boundaries..
  2. It is allowable for either the library author or the user to specify their own bucket boundaries, as long as they are "valid" (I assume non-overlapping, etc.).
  3. It is the duty of author of the library providing the Meter to do the validation
    i. I have not found any code yet where the OTEL libraries validate the bucket boundaries - possibly because the status of the spec is still "mixed"?
    ii. This is the point I am least sure on

I will poke at some people that know OTEL on the Grafana side to see if I am interpreting this correctly.

Links to reference start here: open-telemetry/opentelemetry-specification#3525 (comment)


Instrument advisory parameters

Status: Mixed

advisory parameters are an optional set of recommendations provided by the author of the Instrument, aimed at assisting implementations in providing useful output with minimal configuration. They differ from other parameters in that Implementations MAY ignore advisory parameters.

OpenTelemetry SDKs MUST handle advisory parameters as described here.

advisory parameters may be general, or may be accepted only for specific instrument kinds.
Instrument advisory parameter: ExplicitBucketBoundaries


Instrument advisory parameters

Status: Development

When a Meter creates an instrument, it SHOULD validate the instrument advisory parameters. If an advisory parameter is not valid, the Meter SHOULD emit an error notifying the user and proceed as if the parameter was not provided.

If multiple identical Instruments are created with different advisory parameters, the Meter MUST return an instrument using the first-seen advisory parameters and log an appropriate error as described in duplicate instrument registrations.

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

No branches or pull requests

1 participant