nodejs使用log4js做日志系统
Posted 落帆亭博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nodejs使用log4js做日志系统相关的知识,希望对你有一定的参考价值。
在一个项目当中,日志系统在项目中重要性在这里就不再累述,log4js是nodejs中的一个日志模块,通过设置其优先级别,可以打印出不同级别的日志,便于后续的系统分析。下面来介绍一下log4js的具体使用,这里介绍的版本为2.8.0。
log4js的安装
安装很简单
1 |
npm install log4js -S |
log4js配置
在项目的根目录添加一个log目录,在该目录中新建indexjs,开始配置log4js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
var path = require("path"); const log4js = require('log4js'); log4js.configure({ appenders: { cheese: { type: 'file', filename: 'cheese.log', maxLogSize:10,//文件最大存储空间,当文件内容超过文件存储空间会自动生成一个文件test.log.1的序列自增长的文件 } }, categories: { default: { appenders: ['cheese'], level: 'info' } } });
const logger = log4js.getLogger('cheese'); module.exports=logger |
filename部分可以设置输出的日志文件名称,直接写名称的话会自动创建在项目的根目录,如果想指定其路径,可以自行添加。
type部分设置生成的类型,有两种类型,一种是file,另一种是dateFile。file文件类型则为将日志生成到一个文件中,通过下面的maxLogSize来设置文件的最大值,当大于此值后,则自动创建一个新的文件来存储日志。
dateFile类型则是以天为单位,每天创建一个日志,可以根据自己的需要来判断具体使用哪种类型。
根据天来创建日志的配置代码如下:
var path = require("path");
const log4js = require('log4js');
log4js.configure({
appenders: {
cheese: {
type: 'dateFile',
filename: 'logs/cheese',
pattern: "-yyyy-MM-dd.log",
alwaysIncludePattern: true,
category: 'normal'
}
},
categories: { default: { appenders: ['cheese'], level: 'info' } }
});
const logger = log4js.getLogger('cheese');
module.exports=logger
categories部分设置了其优先等级为info,log4js 的输出级别: trace,debug,info,warn,error,fatal,设置为info后,则只会打印info及其后面的日志。
log4js的使用
1 2 3 4 5 6 7 8 9 10 11 |
var express = require('express'); var router = express.Router(); const bodyParser = require("body-parser"); const cookieParser = require("cookie-parser"); var logger = require('../log')
router.get('/detailArticle',function(req,res,next){
loger.info(req.headers); res.end("goodbye"); }) |
使用时直接引入,即可使用。
以上是关于nodejs使用log4js做日志系统的主要内容,如果未能解决你的问题,请参考以下文章