Skip to content

uptime()

Get the total time live during a heartbeat aggregate

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().

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

The syntax is:

uptime(
agg HEARTBEATAGG
) RETURNS INTERVAL
NameTypeDefaultRequiredDescription
aggHeartbeatAgg-A heartbeat aggregate to get the liveness data from
ColumnTypeDescription
uptimeINTERVALThe sum of all the live ranges in the aggregate.