Skip to content
Last updated July 2, 2026

Queues

The Queues page collects background job queue metrics from every host that has a queue system running. Whether you use Laravel Horizon, BullMQ, Sidekiq, Celery, or a plain Redis-based worker pool, this is where you see pending, processing, and failed job counts across your fleet.

Open it from the sidebar under Monitoring → Queues, or at /queues.

Fleet-level KPIs at the top:

  • Total pending — jobs waiting across every queue on every host.
  • Total processing — jobs currently in flight.
  • Total failed — failures across all queues.
  • Servers — how many hosts are reporting queue data.

A rolling 24 h chart shows total queue size and failure counts hour by hour so you can see whether you are keeping up or falling behind.

Below the chart, one panel per host, grouped by system (Laravel, BullMQ, Sidekiq, Celery). Each panel lists that host’s queues with:

  • Queue name (e.g. default, high, emails).
  • Size — pending jobs.
  • Processing — jobs currently being worked.
  • Failed — cumulative failures.
  • Workers — active worker count.

The page is read-only — queue management stays inside your application. From here you can:

  • Filter to a specific host by clicking the hostname.
  • Jump to the server detail to see the host that owns the queue.

Queue metrics arrive at HostAtlas in two ways:

  1. Agent auto-discovery — the agent recognises Redis-backed queue patterns and reports them without configuration. Laravel, BullMQ, Sidekiq, and Celery all follow known Redis key conventions.
  2. Push API — for anything the agent cannot infer, your app can push metrics directly. The queue-monitor Composer package is a drop-in for Laravel that hooks Horizon and PHPRedis, extracts per-queue counts, and POSTs them on a schedule.

Data lands in a time-series store, which is why the 24 h chart can show hourly rollups without extra work.

Queue metrics feed the Alert Rules engine like any other metric. Common conditions: pending size over N, failed count spike, workers dropped to zero.

Was this page helpful?