extrapolated_delta()

The change in the counter during the time period specified by the bounds in the CounterSummary. To calculate the extrapolated delta, any counter resets are accounted for and the observed values are extrapolated to the bounds using the method specified, then the values are subtracted to compute the delta.

The bounds must be specified for the extrapolated_delta function to work, the bounds can be provided in the counter_agg call, or by using the with_bounds utility function to set the bounds.

2. extrapolated_delta(

4. summary CounterSummary,

6. method TEXT

8. ) RETURNS DOUBLE PRECISION

For more information about counter aggregation functions, see the hyperfunctions documentation.

Required arguments

Name Type Description
summary CounterSummary The input CounterSummary from a counter_agg call
method TEXT The extrapolation method to use. Not case-sensitive.

Currently, the only allowed value of method is prometheus, as we have only implemented extrapolation following the Prometheus extrapolation protocol.

Returns

Name Type Description
extrapolated_delta DOUBLE PRECISION The delta computed from the CounterSummary

Sample usage

2. SELECT

4. id,

6. bucket,

8. extrapolated_delta(

10. with_bounds(

12. summary,

14. time_bucket_range('15 min'::interval, bucket)

16. )

18. )

20. FROM (

22. SELECT

24. id,

26. time_bucket('15 min'::interval, ts) AS bucket,

28. counter_agg(ts, val) AS summary

30. FROM foo

32. GROUP BY id, time_bucket('15 min'::interval, ts)

34. ) t