本文主要是介绍node搭配koa-log4进行日志添加和管理使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.原因
- 使用koa-log4因为本人使用koa来进行开发node项目做后端,所以就也用koa-log4来进行日志的管理。
- 所有console.log都输出到控制台找关键模块的日志输出找起来比较麻烦。
- 控制台关闭了或者清空了想找回之前的日志来定位项目的一些调试或问题就会非常麻烦。
- koa-log4存储日志到指定位置保留日志文件,方便查找定位问题。
2.安装
npm install koa-log4
3.使用
const log4js = require("koa-log4");
log4js.configure({
appenders:{
console:{
type:"console",
category:"console"
},
// 服务器接口
httplog:{
type:"dateFile",//按日期分割
filename:"../log/http/all.log",//存储的日志文件位置
pattern:"yyyy-MM-dd.log",//日志文件的命名
backups:300,//最多保存的文件数量
layout:{
type:"pattern",
pattern:"%d{yyyy-MM-dd hh:mm:ss} [%p] %m"//输出的内容样式
}
},
// 订单日志分割
order:{
type:"dateFile",//按日期分割
filename:"../log/order/all.log",//存储的日志文件位置
pattern:"yyyy-MM-dd-hh.log",//日志文件的命名
backups:300,//最多保存的文件数量
layout:{
type:"pattern",
pattern:"%d{yyyy-MM-dd hh:mm:ss} [%p] %m"//输出的内容样式
}
}
},
categories:{
default:{
appenders:["console"],
level:"all"//可输出等级
},
httplog:{
appenders:["httplog"],//只保存到文件里,不输出到控制台
level:"all"//可输出等级
},
order:{
appenders:["order","console"],//保存到文件里,并输出到控制台
level:"all"//可输出等级
}
}
})
//普通使用
const logger = log4js.getLogger("order");
logger.trace("测试trace");
logger.debug("测试debug");
logger.info("测试info");
logger.warn("测试warn");
logger.error("测试error");
logger.fatal("测试fatal");
//搭配koa进行记录http访问请求到日志中使用
const httpLogger = ()=> log4js.koaLogger(log4js.getLogger("httplog"));//使用httplog
const koa = require("koa");
const app = new koa();
// 请求日志
app.use(httpLogger())
这篇关于node搭配koa-log4进行日志添加和管理使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!