RowDex
Documentation

BullMQ queue monitor

Monitor BullMQ queues from RowDex: queue depth, job states, failed reasons and stack traces, retry and promote jobs, and see active workers, without deploying Bull Board.

Pro2 min readUpdated

On this page

BullMQ stores its queues in Redis. If you already have a Redis connection in RowDex, you can watch your queues on it with nothing extra to deploy or log in to.

Screenshot placeholder

The BullMQ monitor with a list of queues on the left, job counts per status, and a table of failed jobs.

public/docs/bullmq-monitor.png
Queues on the left, jobs for the selected queue on the right.

Open the monitor#

  1. Connect to Redis

    Add a connection to the Redis your queues run on. Choose BullMQ as the database type, which is a Redis connection with the queue dashboard switched on, or use any Redis connection. Queues only show once a Redis connection is open.

  2. Switch to the BullMQ view

    Use the view switch in the workspace to change from SQL to BullMQ.

  3. Pick a queue

    RowDex discovers your queues from Redis. Search the list and select one.

Read the queue list#

Each queue shows five counters. A queue with work in flight is marked open; one with nothing to do is idle.

CounterMeaning
WWaiting: queued and ready to be picked up.
AActive: being processed by a worker right now.
DDelayed: scheduled to run later.
CCompleted: finished successfully.
FFailed: ran and threw an error.

Metrics, jobs and workers#

  • Metrics: counts for the selected queue, including waiting children, prioritized and paused jobs, and whether the queue itself is paused.
  • Jobs: a list you can filter by status and search by name or data.
  • Workers: the workers currently attached to the queue.

Inspect a job#

Click a job to expand its details: the data you queued it with, its options, how many attempts it has made, and for failed jobs the failure reason and stack trace. It is usually everything you need to find out why a job died.

Fix problems#

ActionAvailable forWhat it does
RetryFailed jobsPuts the job back on the queue to run again.
PromoteDelayed jobsMoves the job to waiting so it runs now, instead of at its scheduled time.
RemoveAny jobDeletes the job from the queue, after a confirmation.

Keep it live#

Switch Refresh mode to Auto and pick an interval of 2, 5, 10 or 30 seconds to watch a backlog drain. Use Manual and the Refresh button when you would rather not poll a busy Redis.

New to BullMQ debugging? Read the guide Monitor BullMQ jobs.

Was this page helpful?