TableCountsJob
struct TableCountsJob : AsyncScheduledJob
Job that periodically recomputes the table-count rollup (same data as GET /api/v3/admin/rollup)
and stores it as Prometheus gauges. Runs on its own timer, independent of how often Prometheus
scrapes /api/v3/client/metrics, so a scrape never triggers a fresh round of COUNT queries.
Also invoked once at startup (see postBootConfigure) so the gauges aren’t simply absent from
/api/v3/client/metrics for up to a full schedule interval after every restart.
-
run(context:Asynchronous) Declaration
Swift
func run(context: QueueContext) async throws -
recordTableCounts(on:Asynchronouslogger: ) Declaration
Swift
static func recordTableCounts(on db: Database, logger: Logger) async throws
View on GitHub