@byu-oit/logger

Default configuration for pino logger

Usage no npm install needed!

<script type="module">
  import byuOitLogger from 'https://cdn.skypack.dev/@byu-oit/logger';
</script>

README

BYU Logger

GitHub Release codecov

Creates a pino logger with default settings to match the CES Application Development logging standards.

It will pretty-print logs when run locally, but it will write logs in JSON when deployed (when NODE_ENV=production).

Install

npm i @byu-oit/logger 

Usage

import DefaultLogger from '@byu-oit/logger'

const logger = DefaultLogger()

logger.info('Hello World')
logger.warn('Something weird happened')
logger.error(new Error('Something went wrong!'))
CommonJS Equivalent

const { default: DefaultLogger } = require('@byu-oit/logger')

const logger = DefaultLogger()

logger.info('Hello World')
logger.warn('Something weird happened')
logger.error(new Error('Something went wrong!'))


The semantics are slightly different than functions like console.log() and console.error().

Namely,

console.error('Something went wrong in X:', new Error('the error'))

would be roughly equivalent to

logger.error(new Error('the error'), 'Something went wrong in X')

For more details, see the pino documentation here.

Options

Any pino options can be overridden, but for compliance with our logging standards, we recommend sticking to the defaults provided in this package.

Example of overwriting a default

import DefaultLogger from "./logger"

const logger = DefaultLogger({ level: 'trace' })