bunqueue v2.8 API referenceall versions · guide
bunqueue
    Preparing search index...

    QueueManager - Central coordinator

    Index
    ack ackBatch ackBatchWithResults addCron addLog cancel changeDelay changePriority changeWaitingDelay clean clearConcurrency clearLogs clearRateLimit compactMemory count createLock discard drain emitDashboardEvent extendLock fail flushPersistence forceReleaseClientJobs getAllJobLocks getAllJobLogs getAllJobResults getAllQueueJobCounts getChildrenValues getCloudTelemetry getCompletedJobs getCountsPerPriority getCron getDepCompletions getDlq getDlqConfig getDlqCount getDlqEntries getDlqStats getFailedChildrenValues getIgnoredChildrenFailures getJob getJobByCustomId getJobIndex getJobs getJobState getLockInfo getLogs getMemoryStats getPerQueueStats getProgress getPrometheusMetrics getQueueJobCounts getQueueJobCountsBatch getQueueLimits getQueuesSummary getResult getShards getStallConfig getStats getStorageStatus isPaused jobHeartbeat jobHeartbeatBatch listCrons listQueues moveActiveToWait moveToDelayed moveToWaitingChildren obliterate pause promote promoteJobs pull pullBatch pullBatchWithLock pullWithLock purgeDlq push pushBatch pushFlow registerClientJob registerWorker releaseClientJobs releaseLock removeChildDependency removeCron removeLock removeUnprocessedChildren renewJobLock renewJobLockBatch resume retryCompleted retryDlq setConcurrency setDashboardEmit setDlqConfig setOperationalMetricsProvider setRateLimit setStallConfig shutdown subscribe unregisterClientJob unregisterWorker unregisterWorkersByClientId updateJobData updateJobParent updateProgress verifyLock waitForJobCompletion
    webhookManager: WebhookManager
    workerManager: WorkerManager
    • Parameters

      • items: { id: JobId; result: unknown; token?: string }[]

      Returns Promise<void>

    • Parameters

      • jobId: JobId
      • message: string
      • level: "info" | "warn" | "error" = 'info'

      Returns boolean

    • Parameters

      • jobId: JobId
      • priority: number
      • Optionallifo: boolean

      Returns Promise<boolean>

    • Parameters

      • queue: string
      • graceMs: number
      • Optionalstate: string
      • Optionallimit: number

      Returns JobId[]

    • Emit a dashboard event (callable from handlers)

      Parameters

      • event: string
      • data: Record<string, unknown>

      Returns void

    • Parameters

      • jobId: string | JobId
      • token: string | null
      • duration: number

      Returns Promise<boolean>

    • Parameters

      • jobId: JobId
      • Optionalerror: string
      • Optionaltoken: string
      • unrecoverable: boolean = false
      • Optionalstack: string[]

      Returns Promise<void>

    • Force-release client tracking without acquiring queue locks. Last-resort fallback when releaseClientJobs has exhausted its retry budget — clears the clientJobs map entry to prevent leaks and resets job heartbeats so the stall detector recovers orphaned active jobs on its next tick.

      Parameters

      • clientId: string

      Returns number

    • Get counts for every registered queue with one global aggregation pass.

      Returns Map<string, QueueJobCounts>

    • Get return values from all children of a parent job. Returns a Record where keys are job keys (queueName:jobId) and values are return values. BullMQ v5 compatible.

      Parameters

      Returns Promise<Record<string, unknown>>

    • Get extended telemetry data for cloud snapshot

      Parameters

      • queueNames: string[]

      Returns {
          eventSubscribers: number;
          pendingDepChecks: number;
          perQueue: Record<
              string,
              {
                  activeGroups: number;
                  uniqueKeys: number;
                  waitingChildren: number;
                  waitingDeps: number;
              },
          >;
      }

    • Parameters

      • queue: string

      Returns Record<number, number>

    • Get failed children values for a parent job (populated by continueParentOnFailure).

      Parameters

      Returns Promise<Record<string, string>>

    • Get ignored children failures for a parent job (populated by ignoreDependencyOnFailure).

      Parameters

      Returns Promise<Record<string, string>>

    • Parameters

      • queue: string
      • options: { asc?: boolean; end?: number; start?: number; state?: string | string[] } = {}

      Returns Job[]

    • Parameters

      Returns { message: string | null; progress: number } | null

    • Get job counts for a specific queue

      Parameters

      • queueName: string

      Returns QueueJobCounts

    • Aggregate a selected group of queues without repeating global scans.

      Parameters

      • queueNames: Iterable<string>

      Returns Map<string, QueueJobCounts>

    • Get rate limit and concurrency limit for a queue

      Parameters

      • queue: string

      Returns { concurrencyLimit: number | null; rateLimit: number | null }

    • Get summary of all queues: name, paused, counts

      Returns {
          counts: {
              active: number;
              completed: number;
              delayed: number;
              failed: number;
              prioritized: number;
              waiting: number;
          };
          name: string;
          paused: boolean;
      }[]

    • Get storage health status (disk full detection)

      Returns { diskFull: boolean; error: string | null; since: number | null }

    • Parameters

      • queue: string
      • Optionalcount: number

      Returns Promise<number>

    • Parameters

      • queue: string
      • timeoutMs: number = 0
      • Optionalsignal: AbortSignal

      Returns Promise<Job | null>

    • Parameters

      • queue: string
      • count: number
      • timeoutMs: number = 0
      • Optionalsignal: AbortSignal

      Returns Promise<Job[]>

    • Parameters

      • queue: string
      • count: number
      • owner: string
      • timeoutMs: number = 0
      • lockTtl: number = DEFAULT_LOCK_TTL
      • Optionalsignal: AbortSignal

      Returns Promise<{ jobs: Job[]; tokens: string[] }>

    • Parameters

      • queue: string
      • owner: string
      • timeoutMs: number = 0
      • lockTtl: number = DEFAULT_LOCK_TTL
      • Optionalsignal: AbortSignal

      Returns Promise<{ job: Job | null; token: string | null }>

    • Parameters

      • batch: AtomicFlowBatchInput

      Returns Promise<AtomicFlowBatchResult>

    • Remove a child job's dependency from its parent. If this was the last pending child, promotes parent to queue. Throws if the job has no parent.

      Parameters

      Returns Promise<boolean>

    • Remove all unprocessed (waiting/delayed) children of a parent job. Active, completed, and failed children are not affected.

      Parameters

      Returns Promise<void>

    • Register dashboard event emitter (for WS pub/sub)

      Parameters

      • fn: (event: string, data: Record<string, unknown>) => void

      Returns void

    • Parameters

      • queue: string
      • config: Record<string, unknown>

      Returns void

    • Attach metrics owned by server components outside the queue state machine.

      Parameters

      • provider: () => OperationalMetrics

      Returns void

    • Parameters

      • queue: string
      • limit: number
      • OptionaldurationMs: number
      • OptionalttlMs: number

      Returns void

    • Parameters

      • queue: string
      • config: Record<string, unknown>

      Returns void

    • Unregister worker with dashboard event

      Parameters

      • workerId: string

      Returns boolean

    • Unregister all workers associated with a TCP client ID

      Parameters

      • clientId: string

      Returns number

    • Update a job's parent reference. Used by FlowProducer when creating flows where children need to reference parent.

      Parameters

      Returns Promise<void>

    • Parameters

      • jobId: JobId
      • progress: number
      • Optionalmessage: string

      Returns Promise<boolean>