/roarr-middleware-serialize-error

Serializes error objects in the Roarr message context.

Primary LanguageJavaScriptOtherNOASSERTION

@roarr/middleware-serialize-error

Travis build status Coveralls NPM version Canonical Code Style Twitter Follow

Serializes error objects in the Roarr message context.

Behaviour

The current implementation maps only the direct context properties.

Raise an issue if you have a use case that requires deep property mapping.

Usage

import log from 'roarr';
import createSerializeErrorMiddleware from '@roarr/middleware-serialize-error';

const childLog = log
  .child({name: 'foo'})
  .child(createSerializeErrorMiddleware());

const error = new Error('foo');

log.debug({error}, 'bar');
childLog.debug({error}, 'bar');

// {"context":{"logLevel":20,"error":{}},"message":"bar","sequence":0,"time":1531918373676,"version":"1.0.0"}
// {"context":{"logLevel":20,"error":{"name":"Error","message":"foo","stack":"[REDACTED]"}},"message":"bar","sequence":1,"time":1531918373678,"version":"1.0.0"}