fastify-bugsnag
v5.0.1
Published
Fastify plugin for Bugsnag
Downloads
647
Maintainers
Readme
Fastify Bugsnag Plugin
Easily send your application errors to Bugsnag from your Fastify server.
Description
The plugin will decorate FastifyInstance
and FastifyRequest
with bugsnag
property. The value behind bugsnag
, is
a full BugsnagClient. Bugsnag documentation.
To the FastifyInstance
is attached also an onError
handler, which will send all the errors directly to your Bugsnag
dashboard. In the similar fashion as it's done by the official @bugsnag/plugin-express
.
⚠️ Plugin Behaviour ⚠️
Be aware that the plugin mimics the behaviour of
official Bugsnag Express plugin with
appending
the request data to the error. That includes body
, query
and params
which may include user data!
Compatibility
| | Version |
|---------|--------------------------------------------|
| Fastify | ^5.x
|
| Bugsnag | ^8.0.0
|
| Node | ^20.10.0 || ^22.0.0 |
Installation
npm install fastify-bugsnag --save
# OR
yarn add fastify-bugsnag
Usage
// Javascript
// index.js
const fastify = require('fastify')();
fastify.register(require('fastify-bugsnag'), {
apiKey: 'Your-Bugsnag-API-Key', // Defaults to process.env.BUGSNAG_API_KEY
// Rest of Bugsnag Configuration Options
});
// Typescript/ESM
// index.ts
import fastify from 'fastify';
import fastifyBugsnag from 'fastify-bugsnag';
fastify.register(fastifyBugsnag, {
apiKey: 'Your-Bugsnag-API-Key', // Defaults to process.env.BUGSNAG_API_KEY
// Rest of Bugsnag Configuration Options
});
// routes.ts
fastify.get('/', async (request, reply) => {
fastify.bugsnag.leaveBreadcrumb('Visited homepage'); // OR request.bugsnag.leaveBreadcrumb();
});
fastify.get('/error', async (request, reply) => {
request.bugsnag.notify(new Error('This is a generic error'));
});
Options
| Parameter | Default Value | Description |
|-----------|-------------------------------|---------------------------------------------------------------|
| apiKey
| process.env.BUGSNAG_API_KEY
| API Key obtained from Bugsnag dashboard project. REQUIRED |
For additional options check the official documentation of Bugsnag here.
License
Licensed under MIT.