Skip to main content
Since 1.15.0 Sum all the ranges where the system was live and return the total from a heartbeat aggregate. There may appear to be some downtime between the start of the aggregate and the first heartbeat. If there is a heartbeat aggregate covering the previous period, you can use its last heartbeat to correct for this using interpolated_uptime().
uptime(
    agg HEARTBEATAGG
) RETURNS INTERVAL

Arguments

NameTypeDefaultRequiredDescription
aggHeartbeatAgg-A heartbeat aggregate to get the liveness data from

Returns

ColumnTypeDescription
uptimeINTERVALThe sum of all the live ranges in the aggregate

Samples

Given a table called liveness containing weekly heartbeat aggregates in column health with timestamp column date, use this command to get the total uptime of the system during the week of Jan 9, 2022.
SELECT uptime(health)
FROM liveness
WHERE date = '01-9-2022 UTC'
Returns:
    uptime
-----------------
6 days 23:55:35