kk-logger

1.0.1 • Public • Published

@melot/logger

example

var Logger = require('@melot/logger');

var logger = Logger.getLogger('melot-logger', 'exapmles');

logger.setLevel('debug');

logger.trace('Entering cheese testing');
logger.debug('Got cheese.');
logger.info('Cheese is Gouda.');
logger.warn('Cheese is quite smelly.');
logger.error('Cheese is too ripe!');
logger.fatal('Cheese was breeding ground for listeria.');

Output:

[2017-03-09 09:57:21.399] [DEBUG] melot-logger - [exapmles] Got cheese.
[2017-03-09 09:57:21.400] [INFO] melot-logger - [exapmles] Cheese is Gouda.
[2017-03-09 09:57:21.401] [WARN] melot-logger - [exapmles] Cheese is quite smelly.
[2017-03-09 09:57:21.401] [ERROR] melot-logger - [exapmles] Cheese is too ripe!
[2017-03-09 09:57:21.401] [FATAL] melot-logger - [exapmles] Cheese was breeding ground for listeria.

最佳实践

var Logger = require('@melot/logger');

/*
* 调试可配置一个 console appender,所有日志都会打到控制台
* 如果要多个 category 打到一个日志文件里,则配置一个 logLevelFilter
* 如果单独的 category 打到单独的日志文件里,则新增一个配置
*/
Logger.configure({
  appenders: [
    { type: 'console' },
    {
      type: 'logLevelFilter',
      category: ['category1', 'category2'],
      appender: {
        type: 'dateFile',
        filename: 'logs/app.log',
        pattern: '-yyyy-MM-dd',
        alwaysIncludePattern: false
      }
    }, 
    {
      type: 'dateFile',
      filename: 'logs/cat.log',
      pattern: '-yyyy-MM-dd',
      alwaysIncludePattern: false,
      category: 'Cat'
    }
  ]
  levels: {
    Cat: 'info',
    category1: 'info',
    category2: 'debug'
  }
})

var logger = Logger.getLogger('category1', 'test');

logger.info('foo'); // --> app.log

var logger2 = Logger.getLogger('category2', 'test');

logger2.info('bar'); // --> app.log

var logger3 = Logger.getLogger('Cat', 'test');

logger3.info('zoo'); // --> cat.log

Readme

Keywords

none

Package Sidebar

Install

npm i kk-logger

Weekly Downloads

2

Version

1.0.1

License

ISC

Unpacked Size

12.5 kB

Total Files

9

Last publish

Collaborators

  • com-melot-kk-web