Easily send your application errors to Bugsnag from your Fastify server.
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
.
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!
Version | |
---|---|
Fastify | ^5.x |
Bugsnag | ^8.0.0 |
Node | ^20.10.0 || ^22.0.0 |
npm install fastify-bugsnag --save
# OR
yarn add fastify-bugsnag
// 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'));
});
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.
Licensed under MIT.