API

July 28, 2020 ยท View on GitHub

The library exposes a function to write directly to Papertrail from your own application. The example below shows how this can be done using pino-multi-stream.

Example:

const papertrail = require('pino-papertrail')

const pinoms = require('pino-multi-stream')
// create the papertrail destination stream
const options = require('./options.json')
const appname = 'my-project'
const writeStream = papertrail.createWriteStream({ ...options, appname })
// create pino loggger
const logger = pinoms({ streams: [{ stream: writeStream }] })
// log some events
logger.info('Informational message')
logger.error(new Error('things got bad'), 'error message')

Functions

createWriteStream

The createWriteStream function creates a writestream that pino-multi-stream can use to send logs to.

Example:

const writeStream = papertrail.createWriteStream({
  ...require('/options.json'),
  appname: 'my-project'
})

Options

You can pass the following properties in an options object:

PropertyTypeDescription
appname (default: pino)stringApplication name
host (default: localhost)stringPapertrail destination address
port (default: 1234)numberPapertrail destination port
connection (default: udp)stringPapertrail connection method (tls/tcp/udp)
echo (default: true)booleanEcho messages to the console
message-only (default: false)booleanOnly send msg property as message to papertrail
backoff-strategy (default: new ExponentialStrategy())BackoffStrategyRetry backoff strategy for any tls/tcp socket error