1.0.10 • Published 3 years ago

esther v1.0.10

Weekly downloads
6
License
MIT
Repository
github
Last release
3 years ago

Esther

An opinionated winston logger wrapper.
Requires nodejs 10.11 > as it utilises grpc lib

Usage

The recommended way to use esther is setup the logger with logger.init function. This instantiates a new instance of winston with your own settings under the hood.

const logger = require('esther');

// Initialise logger
logger.init({
  useFileTransport: true,
  logDirectory: path.join(__dirname, '..', 'logs'),
});

You may also use esther via the default logger exposed by require('esther') This works with ES6 syntax such as import.

init Options are identical with winston configs.

NameDefaultDescription
level'info'Log only if verbose is less than or equal to this level
levelsesther.config.levelsLevels representing log priorities
colorsesther.config.colorscolors representing log priorities
disableStackTracefalseDisable logging of stack trace for isHandledError. I.E logger.error(new Error(), { isHandledError: true }); Example
transports[] (Console Transport)Set of logging targets for logs
useFileTransportfalseIf true, will generate and write logs to system
logDirectoryRoot directory of project (__dirname)Logs directory to be written to
useStackDriverfalseIf true, logger transport will utilise google's StackDriver.
stackDriverOpt{ serviceName: 'Auth service', ver: '1.0,0' }Adds labels to each logging

Refer to Stackdriver docs on how to setup your google service account. Alternatively, if you're deploying your app with kubernetes on GKE, each pod is configured with the default service account

Disable Stack Trace

import { BadRequest } from 'horeb';
import path from 'path';
import logger from 'esther';

logger.init({
  disableStackTrace: true,
  useFileTransport: true,
  logDirectory: path.join(__dirname, 'logs'),
});
const err = new BadRequest('invalid parameters');
logger.error(err, { isHandledError: true });
// Prints out message only

TODO

Parameterized options

1.0.10

3 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago