Skip to content

dead_ranges()

Get the down intervals from a heartbeat_agg

Since 1.15.0

Return a set of (start_time, end_time) pairs representing when the underlying system did not have a valid heartbeat during the interval of the aggregate.

Given a table called liveness containing weekly heartbeat aggregates in column health with timestamp column date, use the following to get the intervals where the system was down during the week of Jan 9, 2022.

SELECT dead_ranges(health)
FROM liveness
WHERE date = '01-9-2022 UTC'

Returns:

dead_ranges
-----------------------------------------------------
("2022-01-09 00:00:00+00","2022-01-09 00:00:30+00")
("2022-01-12 15:27:22+00","2022-01-12 15:31:17+00")

The syntax is:

dead_ranges(
agg HEARTBEATAGG
) RETURNS TABLE (
start TIMESTAMPTZ,
end TIMESTAMPTZ
)
NameTypeDefaultRequiredDescription
aggHeartbeatAgg-A heartbeat aggregate to get the liveness data from
ColumnTypeDescription
dead_rangesTABLE (start TIMESTAMPTZ, end TIMESTAMPTZ)The (start, end) pairs of when the system was down.