# @useparagon/opentelemetry-instrumentation-bull

> Auto-instrumentation for the BullJs framework

Latest version **0.0.9** (published 2024-11-01) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install @useparagon/opentelemetry-instrumentation-bull
pnpm add @useparagon/opentelemetry-instrumentation-bull
yarn add @useparagon/opentelemetry-instrumentation-bull
bun add @useparagon/opentelemetry-instrumentation-bull
```

## Health

**Score 35/100 (D)** — status: maintenance-mode.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support; pre 1.0.

Negative: stale; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.9 |
| Published | 2024-11-01 |
| First published | 2023-08-21 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 4 |
| Unpacked size | 32.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | "Anand Chaudhary" |
| Maintainers | luis-ramirez, adriantucci-paragon, tai-paragon, artavia-paragon, raul-paragon, carlos.garcia506, francisco.rossi, abhisheksharma201, shivam_kumar027, anuragbhati, richard-paragon, sunny9899, rahulgoyal, nautidpk, deepanshu-pg, vikash_paragon, nipun.dawar, juanpa-a, ahasseyp, loren.sanz, ayushparagon, paragonbot, anakshiant-p, ted-paragon, ethan-paragon, ishmaelparagon |
| Keywords | bull, instrumentation, opentelemetry, tracing |

## Links

- npm: https://www.npmjs.com/package/@useparagon/opentelemetry-instrumentation-bull
- npm.io page: https://npm.io/package/@useparagon/opentelemetry-instrumentation-bull

## Dependencies (4)

- [flat](https://npm.io/package/flat.md) ^5.0.2
- [@opentelemetry/api](https://npm.io/package/@opentelemetry/api.md) ^1.9.0
- [@opentelemetry/instrumentation](https://npm.io/package/@opentelemetry/instrumentation.md) ^0.54.0
- [@opentelemetry/semantic-conventions](https://npm.io/package/@opentelemetry/semantic-conventions.md) ^1.27.0

## Alternatives

- [cron](https://npm.io/package/cron.md) — 4.9M weekly downloads
- [@vercel/queue](https://npm.io/package/@vercel/queue.md) — 731.6K weekly downloads
- [create-sonicjs](https://npm.io/package/create-sonicjs.md) — 1.6K weekly downloads
- [@exellix/jobs-api](https://npm.io/package/@exellix/jobs-api.md) — 941 weekly downloads
- [@forwardimpact/libskill](https://npm.io/package/@forwardimpact/libskill.md) — 575 weekly downloads

## Recent versions

- 0.0.9 (latest) — 2024-11-01
- 0.0.8 — 2024-11-01
- 0.0.7 — 2023-08-21

## README

# OpenTelemetry Bull Instrumentation



This module provides automatic tracing instrumentation for [Bull][https://github.com/OptimalBits/bull].



## Installation

```bash
npm install --save @useparagon/opentelemetry-instrumentation-bull
```

## Usage

OpenTelemetry Bullmq Instrumentation allows the user to automatically collect trace data from Bullmq jobs and workers and export them to the backend of choice.

To load the instrumentation, specify it in the instrumentations list to `registerInstrumentations`. There is currently no configuration option.

```javascript
const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');
const { BullInstrumentation } = require('@useparagon/opentelemetry-instrumentation-bull');

const provider = new NodeTracerProvider();
provider.register();

registerInstrumentations({
  instrumentations: [
    new BullInstrumentation(),
  ],
});
```

## Emitted Spans

| Name                                                   | BullMQ method           | Description                                         |
|--------------------------------------------------------|-------------------------|-----------------------------------------------------|
| `{QueueName.JobName} Queue.add`                        | `Queue.add            ` | A new job is added to the queue                     |
| `{QueueName} Queue.addBulk`                            | `Queue.addBulk        ` | New jobs are added to the queue in bulk             |
| `{QueueName} Queue.getNextJob`                         | `Queue.getNextJob     ` | getting next job from queue                         |
| `{QueueName} Queue.clean`                              | `Queue.clean          ` | Cleaning jobs from queue                            |
| `{QueueName} Queue.processJob`                         | `Queue.processJob     ` | Job processing                                      |

---
_Source: https://npm.io/package/@useparagon/opentelemetry-instrumentation-bull · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
