Repository navigation
Conversation
1 of 3 tasks
`Sentry.cron.instrumentBullMQWorker(worker)` sends check-ins for every job the worker runs from a job scheduler, using the scheduler id as the monitor slug and its `pattern` or `every` as the monitor schedule. Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
wedamija
force-pushed
the
danf/bullmq-cron-monitors
branch
from
October 20, 2026 00:51
dd87bd3 to
b7b621e
Compare
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
…onitors-merge # Conflicts: # pnpm-lock.yaml
Contributor
size-limit report 📦Compared: 20dabc3 (PR test merge using develop at b722d3c) Against: b722d3c (develop) · base run #64034 ✅ Baseline matches: this diff contains only this PR's changes.
|
Contributor
Optional E2E testsSome optional checks were not successful. They do not block the merge. 2 not successful, 51 successful. See the run.
Successful checks
|
# Conflicts: # dev-packages/node-integration-tests/package.json # pnpm-lock.yaml
The BullMQ tracing suite from develop also binds 6384.
With BullMQTelemetry, the worker emits `active` before the job's process span starts, so the in_progress check-in linked to the previous job's trace. Sentry keeps that trace for the check-in. Send it from the processor instead, and add an integration test that runs a job scheduler with both enabled.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of a series adding automatic Crons monitoring for the most-used job schedulers in each SDK. Check-ins for a monitor that doesn't exist yet are dropped, so today each monitor has to be created by hand with its schedule copied from the code. Sending the job's schedule as the monitor config lets Sentry create the monitor and keep it in sync.
This adds
Sentry.cron.instrumentBullMQWorker, next to the existingcron,node-cronandnode-schedulehelpers. It wraps the worker's processor function, which BullMQ also uses for sandboxed processors, and listens forcompletedandfailed. WithSentry.BullMQTelemetrythe check-ins sit in the job's trace. Each job from a job scheduler sends check-ins under the scheduler id, with itspattern(intz, or the server's time zone) oreveryas the monitor config.Schedules Crons can't express, like sub-minute intervals or
?/Wsyntax, and schedulers withlimitorendDatecheck in without a config. Legacy repeatable jobs (queue.addwithrepeat) aren't monitored.pnpm-workspace.yamladdsmsgpackr-extracttoallowBuilds, which bullmq needs for the integration tests.Docs: getsentry/sentry-docs#20053