Scraping
The exporter listens on its own port and is scraped like any other target. It reads Redis with a dedicated connection and never writes to the queue; a failed scrape must not affect job processing.
Cardinality
Queue and connection names are low-cardinality by design. The exporter refuses to label by job class by default, because a label with thousands of values is a metrics bill disguised as observability.
A backed-up queue
- Check
queuelens_oldest_job_secondsto distinguish a stall from a burst. - If the oldest job is ageing, inspect the worker's last heartbeat and restart the supervisor.
- If depth is rising but the oldest job is young, the queue is simply under-provisioned; scale workers before changing the code.
Compatibility
The exporter supports Horizon's Redis schema for the current major version. A schema change is detected at boot and reported as an exporter error rather than as silently missing metrics.