kk-logger
v1.0.1
Published
log4js wrapper
Downloads
1
Readme
@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