Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/specs/om/open_metrics_spec_2_0.md
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ A MetricPoint in a Metric with the type Counter SHOULD have a Timestamp value ca

A MetricPoint in a Metric's Counter's Total MAY reset to 0. If present, the corresponding Start Timestamp MUST also be set to the timestamp of the reset.

A MetricPoint in a Metric's Counter's Total MAY have an exemplar.
A MetricPoint in a Metric's Counter's Total MAY have exemplars.

#### StateSet

Expand Down Expand Up @@ -286,7 +286,7 @@ Exposed Classic Bucket thresholds SHOULD stay constant over time and between tar

If the NaN value is allowed, it MUST be counted in the +Inf bucket, and MUST NOT be counted in any other bucket. The rationale is that NaN does not belong to any bucket mathematically, however instrumentation libraries traditionally put it into the +Inf bucket.

Classic Bucket values MAY have exemplars. The value of the exemplar MUST be within the Classic Bucket. Exemplars SHOULD be put into the Classic Bucket with the lowest threshold that includes the exemplar value. A Classic Bucket MUST NOT have more than one exemplar.
Classic Bucket values MAY have exemplars. The value of the exemplar SHOULD be within the Classic Bucket. Exemplars SHOULD be put into the Classic Bucket with the lowest threshold that includes the exemplar value. A Classic Bucket SHOULD NOT have more than one exemplar.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WG notes

  • It's typical in Otel to go outside
  • How this works for native histograms? Separate storages? We could switch to the language native histograms uses - "evenly distributed". As long as it's evenly distributed, it's fine if it's not within buckets.
  • Krajo: For classic histograms are by design it's inside bucket. For classic histograms we can have only one exemplar per bucket. We can refine this to say similar thing to native histograms. In Go SDK exemplars storages are different for native vs classic (although on proto it's one field - to be checked).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • How this will work with 1.0 compatible storage

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • K: Maybe we should say one exemplar per bucket? We could change over time.
  • D: What's value of saying MUST
  • K: Either be strict (same as before), or be relaxed and lose exemplars for 1.0 - it's likely fine

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

K: We need to rewrite this rule as this applies in a different way (composite) - should be one per bucket / align wording


##### Native Buckets

Expand Down