You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A change in behaviour is present between 0.24 & 0.26 for ObservableGauge & possibly other Async Instruments.
In 0.26 once any reading is made for a given combination of attributes that reading is always sent in subsequent collections. There's no way to remove any attributes that are no longer present in the data. This doesn't match the SDK Spec:
For asynchronous instruments with Delta or Cumulative aggregation temporality, MetricReader.Collect MUST only receive data points with measurements recorded since the previous collection.
OTel Rust currently is likely violating the above part of spec, as it never forgets data points for Cumulative temporality, but the spec says it should forget data points for CUMULATIVE too, for Observable instruments.
Considered Alternatives
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered:
The LastValue aggregation function used to have a comment saying "[Builder::temporality] is ignored and delta is always used", and "Delta temporality is the only temporality that makes semantic sense for a last-value aggregate", but now it obeys self.temporality and will apply cumulative data if self.temporality is not Delta.
Interestingly the doc comments for AggregateBuilder still say that Delta temporality will be used for last_value:
/// If this is not provided, a default of cumulative will be used (except for the
It would seem to me that the original comments were right... last_value should mean last value even if the AggregateBuilder's temporality is cumulative.
This is effecting me because the opentelemetry_prometheus's PrometheusExporter only supports Temporality::Cumulative:
Related Problems?
No response
Describe the solution you'd like:
A change in behaviour is present between 0.24 & 0.26 for ObservableGauge & possibly other Async Instruments.
In 0.26 once any reading is made for a given combination of attributes that reading is always sent in subsequent collections. There's no way to remove any attributes that are no longer present in the data. This doesn't match the SDK Spec:
Adapted one of the existing tests to show an error - markdingram@68d375b
Comment from @cijothomas on CNCF Slack:
Considered Alternatives
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered: