idelta_left() and idelta_right()
The instantaneous change in the counter at the left (earlier) and right (later) side of the time range.
For more information about counter aggregation functions, see the hyperfunctions documentation.
idelta_left()
The instantaneous change in the counter at the left (earlier) side of the time range. Essentially, the first value subtracted from the second value seen in the time range (handling resets appropriately). This can be especially useful for fast moving counters.
2. idelta_left(
4. summary CounterSummary
6. ) RETURNS DOUBLE PRECISION
Required arguments
| Name | Type | Description |
|---|---|---|
| summary | CounterSummary | The input CounterSummary from a counter_agg call |
Returns
| Name | Type | Description |
|---|---|---|
| idelta_left | DOUBLE PRECISION | The instantaneous delta computed from the left (earlier) side of the CounterSummary |
Sample usage
2. SELECT
4. id,
6. bucket,
8. idelta_left(summary)
10. FROM (
12. SELECT
14. id,
16. time_bucket('15 min'::interval, ts) AS bucket,
18. counter_agg(ts, val) AS summary
20. FROM foo
22. GROUP BY id, time_bucket('15 min'::interval, ts)
24. ) t
idelta_right()
The instantaneous change in the counter at the right (later) side of the time range. Essentially, the penultimate value subtracted from the last value seen in the time range (handling resets appropriately). This can be especially useful for fast moving counters.
2. idelta_right(
4. summary CounterSummary
6. ) RETURNS DOUBLE PRECISION
Required arguments
| Name | Type | Description |
|---|---|---|
| summary | CounterSummary | The input CounterSummary from a counter_agg call |
Returns
| Name | Type | Description |
|---|---|---|
| idelta_right | DOUBLE PRECISION | The instantaneous delta computed from the right (later) side of the CounterSummary |
Sample usage
2. SELECT
4. id,
6. bucket,
8. idelta_right(summary)
10. FROM (
12. SELECT
14. id,
16. time_bucket('15 min'::interval, ts) AS bucket,
18. counter_agg(ts, val) AS summary
20. FROM foo
22. GROUP BY id, time_bucket('15 min'::interval, ts)
24. ) t
