2.1.1 • Published 9 years ago

domino-logger v2.1.1

Weekly downloads
-
License
MIT
Repository
-
Last release
9 years ago

domino-logger

Build Status DevDependency Status

Logger for node.js apps used in Yandex.Mediaservices domino frontend. Uses debug in development and process.stdout/stderr in production environment. Supports namespaces.

Post on Medium.com: https://medium.com/@1999/domino-logger-why-we-wrote-another-logger-for-our-node-js-app-ed11a2a8958b

Install

npm install domino-logger --save

Basic Usage

'use strict';

const dominoLogger = require('domino-logger');
const moment = require('moment');

// first, create factory for new loggers
// pass your app name to domino-logger function
const loggerFactory = dominoLogger('kinopoisk');

// second, create logger instance
// available options are:
// - emitErrors: emit errors if logger.error is called (true by default)
// - format: custom formatting function for production environment
//     invoked with req (http.incomingMessage), namespace, message and extra
// - namespace: next level namespace (log namespace is appname:nextlevel then)
// - extra: some additional object you can use in `format` function
const loggerInstance = loggerFactory({
    // for example like this
    format(req, namespace, message, extra) {
        return moment().format('YYYY-MM-DD HH:mm:ss.SSS') + '\t' +
            'pid:' + process.pid + '\t' +
            'request_id:' + req.uuid + '\t' +
            'yandex_uid:' + req.auth.yandex_uid + '\t' +
            namespace + '\t' +
            message;
    }
}).on('error', ({namespace, message, req}) => {
    // handle errors
});
2.1.1

9 years ago

2.1.0

9 years ago

2.0.2

10 years ago

2.0.1

10 years ago

2.0.0

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago