The jobs section, read from Oban's oban_jobs table with one aggregate query through
the repo and prefix of the running Oban instance. Job-only nodes therefore do not need
to be scraped: any web container reports the shared queue.
queue_depth- jobsavailable, plusscheduledjobs whose time has come.oldest_queued_age_seconds- age of the oldest of those, fromscheduled_at.processed_last_5m- jobscompletedin the last 5 minutes.failed_last_5m- jobsdiscardedin the last 5 minutes, plusretryablejobs whose failed attempt started in the last 5 minutes.recent_processing_at- the latestattempted_atorcompleted_at.workers-nil. Oban has no per-node heartbeat table outside Oban Pro.
Counts only: no queue names, worker names, args, errors or meta are read.
The counts see only rows still in oban_jobs. If Oban.Plugins.Pruner keeps jobs for
less than 5 minutes (its default max_age is 60 seconds), processed and failed counts
are undercounted.
Postgres only (the Basic and Pro Smart engines). Oban on SQLite or MySQL reports the
adapter "unsupported" with no numbers.