日志模块log4js的配置说明
1:先安装log4js模块
npm install log4js
目前安装的版本信息:"log4js": "^3.0.5"
2:引用及配置
var log4js = require('log4js');
// log4js的输出级别6个: trace, debug, info, warn, error, fatal
log4js.configure({
//输出位置的基本信息设置
appenders: {
//设置控制台输出 (默认日志级别是关闭的(即不会输出日志))
out: { type: 'console' },
//设置每天:以日期为单位,数据文件类型,dataFiel 注意设置pattern,alwaysIncludePattern属性
//allLog: { type: 'dateFile', filename: './log/all', pattern: '-yyyy-MM-dd.log', alwaysIncludePattern: true },
//所有日志记录,文件类型file 文件最大值maxLogSize 单位byte (B->KB->M) backups:备份的文件个数最大值,最新数据覆盖旧数据
allLog: { type: 'file', filename: './log/all.log', keepFileExt: true, maxLogSize: , backups: },
//http请求日志 http请求日志需要app.use引用一下, 这样才会自动记录每次的请求信息
httpLog: { type: "dateFile", filename: "log/httpAccess.log", pattern: ".yyyy-MM-dd", keepFileExt: true },
//错误日志 type:过滤类型logLevelFilter,将过滤error日志写进指定文件
errorLog: { type: 'file', filename: './log/error.log' },
error: { type: "logLevelFilter", level: "error", appender: 'errorLog' }
},
//不同等级的日志追加到不同的输出位置:appenders: ['out', 'allLog'] categories 作为getLogger方法的键名对应
categories: {
//appenders:采用的appender,取上面appenders项,level:设置级别
http: { appenders: ['out', 'httpLog'], level: "debug" },
default: { appenders: ['out', 'allLog', 'error'], level: 'debug' }, //error写入时是经过筛选后留下的
}
});
//getLogger参数取categories项,为空或者其他值取default默认项
// exports.getLogger = function (name) {
// return log4js.getLogger(name || 'default')
// }
const logger = log4js.getLogger("liveMeeting");
const httpLog = log4js.getLogger('http');
const httpLogger = log4js.connectLogger(httpLog, { level: 'WARN' });
exports = module.exports = { logger, httpLogger };
http请求日志 http请求日志需要app.use引用一下, 这样才会自动记录每次的请求信息 :
global.logger = require('./config/log4js').logger;
httpLogger = require('./config/log4js').httpLogger;
//这样会自动记录每次请求信息,放在其他use上面
app.use(httpLogger);
logger用来记录所有手动输入的日志,如:
日志模块log4js的配置说明的更多相关文章
- node 日志管理log4js
node 日志管理log4js 一.默认的控制台输出 我们使用express框架时,开发模式用node或者supervisor启动nodejs应用时,控制台都是显示如下的日志. GET /css/bo ...
- 玩转Nodejs日志管理log4js(转)
转自:http://blog.fens.me/nodejs-log4js/ 前言 日志对任何的应用来说都是至关重要的.在Nodejs中使用express框架并没有自带的日志模块,我们可以选择log4j ...
- 【腾讯Bugly干货分享】微信mars 的高性能日志模块 xlog
本文来自于腾讯bugly开发者社区,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/581c2c46bef1702a2db3ae53 Dev Club 是一个交流移动 ...
- Python 日志模块 logging通过配置文件方式使用
vim logger_config.ini[loggers]keys=root,infoLogger,errorlogger [logger_root]level=DEBUGhandlers=info ...
- 搭建一套自己实用的.net架构(2)【日志模块-log4net】
先谈谈简单的模块,日志.在系统中日志模块是必须的,什么系统日志,操作日志,调试日志.这里用的是log4net. 对log4net还不熟悉的小伙伴们赶快去搜索基础教程哦, 我这里就不温故了. 那么有人要 ...
- logging 日志模块学习
logging 日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪,所以还是灰常重要滴,下面我就来从入门到放弃的系统学习一下日志既可以在屏幕上显示,又可以在文件中体现. ...
- 【腾讯Bugly干货分享】微信终端跨平台组件 mars 系列(一) - 高性能日志模块xlog
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57ff5932cde42f1f03de29b1 本文来源: 微信客户端开发团队 ...
- 日志模块logging使用心得
在应用程序使用中,日志输出对应用维护人员.开发人员判断程序的问题起重要作用. 那么在python中如何定义程序的日志输出? 推荐使用日志模块logging 需求:实现日志内容输出在文件中和控制器中 i ...
- python日志模块
许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系 统的运行状况进行跟踪.在.NET平台中,有非常著名的第三方开源日志组件log4net,c++中,有人们熟悉的log4c ...
随机推荐
- SkyWalking分布式链路追踪和监控-项目实战
微服务框架落地后,分布式部署架构带来的问题就会迅速凸显出来.服务之间的相互调用过程中,如果业务出现错误或者异常,如何快速定位问题?如何跟踪业务调用链路?如何分析解决业务瓶颈?本专栏将引入Skywalk ...
- 基本认证(Basic Authorization)
---------------------------------- import arcpy from base64 import encodestring username = 'xxx' pas ...
- 剑指 Offer——2. 替换空格
题目描述 请实现一个函数,将一个字符串中的每个空格替换成"%20".例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 思路与实现 ...
- DRF简易了解
Drf框架 一丶API接口 # 为了在团队内部形成共识.防止个人习惯差异引起的混乱,我们需要找到一种大家都觉得很好的接口实现规范,而且这种规范能够让后端写的接口,用途一目了然,减少双方之间的合作成本. ...
- webpack篇,结合理论与实际,加以透彻分析!
Webpack篇 开始着手项目打包的一些东西,还不是特别懂,一边学习,一边做笔记好啦. 1.webpack的概念.Webpack 是当下最热门的前端资源模块化管理和打包工具.任何形式的资源都可以视作模 ...
- opencv::GMM(高斯混合模型)
GMM方法概述:基于高斯混合模型期望最大化. 高斯混合模型 (GMM) 高斯分布与概率密度分布 - PDF 初始化 初始化EM模型: Ptr<EM> em_model = EM::crea ...
- LeetCode——Rank Scores
Write a SQL query to rank scores. If there is a tie between two scores, both should have the same ra ...
- JavaScript深入浅出第4课:V8引擎是如何工作的?
摘要: 性能彪悍的V8引擎. <JavaScript深入浅出>系列: JavaScript深入浅出第1课:箭头函数中的this究竟是什么鬼? JavaScript深入浅出第2课:函数是一等 ...
- tornado 文件上传
服务端 def post(self, *args, **kwargs): # content_type # filename # body file_data=self.request.files i ...
- jquery实现checkbox列表的全选不选
html代码 <th><input type="checkbox" onclick="selectAll(this);" />全选/取消 ...