Skip to main content
BullMQ is a Node.js job queue library backed by Redis. The AppSignal for Node.js integration for BullMQ instruments the enqueueing and processing in your application.

Installation

For BullMQ versions 5 and below, the BullMQ package is instrumented automatically by the AppSignal for Node.js package. For BullMQ version 6, see the installation and configuration instructions in the following section. If you run your workers as separate processes, make sure to also use node --require appsignal.cjs ... when starting the worker processes, so that AppSignal can instrument the workers’ job processing.

BullMQ 6 installation and configuration

BullMQ version 6 is not instrumented automatically. It reports through BullMQ’s own telemetry instead, which requires installing the bullmq-otel package:
Pass a BullMQOtel instance as the telemetry option to each queue and worker:
Do not set the tracerName option when initializing BullMQOtel. AppSignal identifies these spans by their instrumentation scope, which must be bullmq. See BullMQ’s telemetry documentation for more information.

Features

When using the BullMQ integration, AppSignal will create a performance trace for each job that is processed by a worker. When a job is enqueued in an instrumented context, such as a web request or background job, AppSignal will display an event in the performance trace’s event timeline representing the job enqueueing.