天天看点

log4js初探

最近由于工作需要,一个nodejs项目,跑在容器云环境上,需要打印日志,初步搜索了下,log4js可以满足需求。

参考资料:

https://www.npmjs.com/package/log4js

以及官网文档

https://log4js-node.github.io/log4js-node/

主要用到的appender是fileAppender.

主要步骤:

1.定义1个log4js的配置文件,log4js.json.

内容如下:

{ "appenders" : { "access" : { "type" : "dateFile" , "filename" : "log/access.log" , "pattern" : "-yyyy-MM-dd" , "category" : "http" }, "app" : { "type" : "file" , "filename" : "log/app.log" , "maxLogSize" : 10485760 , "numBackups" : 3 }, "errorFile" : { "type" : "file" , "filename" : "log/errors.log" }, "errors" : { "type" : "logLevelFilter" , "level" : "ERROR" , "appender" : "errorFile" } }, "categories" : { "default" : { "appenders" : [ "app" , "errors" ], "level" : "DEBUG" }, "http" : { "appenders" : [ "access" ], "level" : "DEBUG" } } }

2.在应用启动时(app.js)加载改配置文件,

var log4js = require ( 'log4js' ); log4js.configure('./config/log4js.json');

var log = log4js . getLogger ( "app" ); app . use (log4js . connectLogger (log4js . getLogger ( "http" ), { level : 'auto' }));

3.在业务js中可以这么用:

var log = require ( 'log4js' ). getLogger ( "index" );

log . debug ( "This is in the index module" );