0.4.1 • Published 4 years ago

pino-sentry-ext v0.4.1

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

pino-sentry

CircleCI node license

Load pino logs into Sentry

Index

Install

npm install pino-sentry -g

Usage

CLI

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

API

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

// add tags
logger.info({tags : { foo : "bar" }, msg : "Error"})

// add extra
logger.info({extra : { foo : "bar" }, msg : "Error"})

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)
  • --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)
  • --level (-l): minimum level for a log to be reported to Sentry (default to debug)

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'
}

License

MIT License