Skip to content

A bunch of utitlity functions to make logging in express and gcp a breeze

Notifications You must be signed in to change notification settings

obengwilliam/express-stackdriver-pino

Repository files navigation

version downloads MIT License Examples

Watch on GitHub Star on GitHub Tweet

Overview

  • Provides a number of express log utilities that are formatted to work on stackdriver using fastest the logger in nodejs :) pino

Checklist

  • Add correlation ids to global log or parent log
  • Logs should be in json
  • Do not log to file, log to stdout and stderr
  • Middleware to log on every request
  • Redact sensitive information
  • Middleware to log every error
  • Logs should be formatted for Stackdriver

Installation

npm install express-stackdriver-pino 

Usage

Log every request middleware

logs requests is formatted to match google stack driver HttpRequest format

const express = require('express');
const expressLogger = require('express-stackdriver-pino');

const app = express();

const options = {
  serviceName: 'service-name',
}
const logger = expressLogger(options);
app.use(logger.reqResLogger())

Log every error middleware

Log errors are formatted to match Stackdriver

const express = require('express');
const expressLogger = require('express-stackdriver-logger');

const app = express();
const options = {
  serviceName: 'service-name',
}

const logger = expressLogger(options)
app.use(logger.errorLogger())

The above also attaches a logger to req.log. This can be used in the controllers to log anything.

Options

param description
serviceName(required) name of service
enabled Enable service or not eg. true or false
destination Destination for logs, it should be a WritableStream
const express = require('express');
const expressLogger = require('express-stackdriver-logger');

const app = express();
const options = {
  serviceName: 'service-name',
}

const logger = expressLogger(options)
app.use(logger.errorLogger())

About

A bunch of utitlity functions to make logging in express and gcp a breeze

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published