1. 配置文件:app_log4js_configuration.json
{
"appenders": {
"fileLog" : {
"type": "file",
"filename": "log/log_file.log",//文件目录,当目录文件或文件夹不存在时,会自动创建
"maxLogSize": 102400,//文件最大存储空间,当文件内容超过文件存储空间会自动生成一个文件test.log.1的序列自增长的文件
"backups": 5,//default value = 5.当文件内容超过文件存储空间时,备份文件的数量
"category": "relative-logger"
},
"importLog": {
"type": "file",
"filename": "log/import.log",
"maxLogSize": 102400,
"backups": 5,
"category": "import-logger"
}
},
"categories": {
"relative-logger": {
"appenders": ["fileLog"],
"level": "info",
"replaceConsole": "true"
},
"default": {
"appenders": [
"importLog"
],
"level": "error"
}
}
}
appenders: 一个JS对象
配置文件的输出源,一般日志输出type共有console、file、dateFile三种 console:普通的控制台输出 file:输出到文件内,以文件名-文件大小-备份文件个数的形式rolling生成文件 dateFile:输出到文件内,以pattern属性的时间格式,以时间的生成文件 categories: default表示log4js.getLogger()获取找不到对应的category时,使用default中的日志配置
level: 配置日志的输出级别,共ALL<TRACE<DEBUG<INFO<WARN<ERROR<FATAL<MARK<OFF八个级别,default level is OFF 只有大于等于日志配置级别的信息才能输出出来,可以通过category来有效的控制日志输出级别
replaceConsole: 是否替换控制台输出,当代码出现console.log,表示以日志type=console的形式输出
2.启动文件引用:
log4js.configure(__dirname + '/config/app_log4js_configuration.json',{cwd:__dirname}); //配置文件
global.logModule = log4js.getLogger('relative-logger');//配置文件里category对应的信息
3.使用:
logModule.info(format('发送验证码成功,手机号码:{0},验证码:{1}', req.params.phonenum, secCode));
logModule.error("xxx数据源错误");
扩展阅读:
https://www.npmjs.com/package/log4js
https://blog.csdn.net/Iron_Ye/article/details/84076747