Skip to content

Commit ca4920c

Browse files
committed
Add current status update (wait for CT)
Signed-off-by: Fiona Liao <[email protected]>
1 parent 986a312 commit ca4920c

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

proposals/0048-otel_delta_temporality_support.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
**We have changed the preferred approach from the one suggested in this proposal (type as gauges, add otel labels) and instead would like to jump straight to the [Treat as mini-cumulative](#treat-as-mini-cumulative) approach. This would allow us to support deltas within the existing framework and without requiring the rate function to do different things depending on type/temporality. This requires the [CT per sample proposal](https://github.com/prometheus/proposals/pull/60) to be implemented. This proposal will on hold until CT per sample has advanced enough for us to be confident it will work for deltas (or choose a different approach if it does not).**
2+
13
# OTEL delta temporality support
24

35
* **Owners:**
@@ -433,7 +435,7 @@ This has the problem of having to use different functions for delta and cumulati
433435

434436
Deltas can be thought of as cumulative counters that reset after every sample. So it is technically possible to ingest as cumulative and on querying just use the cumulative functions.
435437

436-
This requires CT-per-sample (or some kind of precise CT tracking) to be implemented. Just zero-injection of StartTimeUnixNano would not work all the time. If there are samples at consecutive intervals, the StartTimeUnixNano for a sample would be the same as the TimeUnixNano for the preceding sample and cannot be injected.
438+
This requires CT-per-sample (or some kind of precise CT tracking) to be implemented and it to be taken into acount for the `rate()`/`increase()` calculations. Just zero-injection of StartTimeUnixNano would not work all the time. If there are samples at consecutive intervals, the StartTimeUnixNano for a sample would be the same as the TimeUnixNano for the preceding sample and cannot be injected.
437439

438440
The standard `rate()`/`increase()` functions do not work well with delta-specific characteristics, especially without CT-per-sample. The OTEL SDKs only emit datapoints when there is a change in the interval so samples might not come at consistent intervals. But `rate()` assumes samples in a range are equally spaced to figure out how much to extrapolate.
439441

0 commit comments

Comments
 (0)