Skip to content

gr2m/pino-sentry-errors

 
 

Repository files navigation

pino-sentry-errors

Send pino error & fatal logs into Sentry

Index

Install

npm install pino-sentry-errors -g

Usage

CLI

node ./app.js | pino-sentry-errors --dsn=https://******@sentry.io/12345

API

const { createWriteStream } = require("pino-sentry-errors");
// ...
const opts = {
  /* ... */
};
const stream = createWriteStream({ dsn: process.env.SENTRY_DSN });
const logger = pino(opts, stream);

Options (options)

Transport options

  • --dsn (-d): your Sentry DSN or Data Source Name (defaults to process.env.SENTRY_DSN)
  • --environment (-e): (defaults to process.env.SENTRY_ENVIRONMENT || process.env.NODE_ENV || 'production')
  • --serverName (-n): transport name (defaults to pino-sentry-errors)
  • --debug (-dm): turns debug mode on or off (default to process.env.SENTRY_DEBUG || false)
  • --sampleRate (-sr): sample rate as a percentage of events to be sent in the range of 0.0 to 1.0 (default to 1.0)
  • --maxBreadcrumbs (-mx): total amount of breadcrumbs that should be captured (default to 100)

Log Level Mapping

Pino logging levels are mapped by default to Sentry's acceptable levels.

{
  trace: 'debug',
  debug: 'debug',
  info: 'info',
  warn: 'warning',
  error: 'error',
  fatal: 'fatal'
}

Credits

This package is nearly identical with pino-sentry by @aandrewww. The only difference is that it only sends logs with level error and fatal to Sentry, while pino-sentry sends all logs.

License

MIT License

About

🚥 Load pino logs into Sentry

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages

  • TypeScript 68.5%
  • JavaScript 31.5%