nodejs express项目使用log4js
2016-09-07 13:42
621 查看
这几天一直在研究log4js的日志功能,说起来都是泪啊
。。就那么简单的一个功能,足足卡了我几天。(没看错,就是几天)。。。原因就是,log4js没有把加载文件和访问的路径写进生成的日志文件。上百度查来查来都是那几编教程,然后再去google查,还是那样。。。查找未果之后,只能自己默默探索了。。
为了避免大家跟着我踩坑,下面就直接上正确的代码了。。
1.下载log4js包(在自己项目下输入下面这个命令)
npm install log4js
2.创建一个log.js文件
var log4js = require('log4js');
log4js.configure({
appenders:[
{
type : "console",
category:"console" //设置后控制台不输出信息,可删除这句
},{
type:"dateFile",
filename:"../logs/log",
pattern: "_yyyy-MM-dd.log",
alwaysIncludePattern: true, //文件名是否始终包含占位符
absolute: false, //filename是否绝对路径
category: "dateFileLog"
}
],
replaceConsole: true,
levels:{
dateFileLog:"INFO", //设置记录器的默认显示级别,低于这个级别的日志,不会输出。其他级别(trace、debug、warn、error、fatal)
}
});
var dateFileLog = log4js.getLogger('dateFileLog');
exports.logger = dateFileLog;
exports.use = function(app){
//app.use(log4js.connectLogger(dateFileLog, {level:'INFO', format:':method :url'}));
app.use(log4js.connectLogger(dateFileLog, {level:'auto', format:':method :url'}));
}
3.在app.js文件中引入log.js文件
4.调用日志模板
*切记,必须放在app.use(logger.('dev'))前面,不然日志不打印访问的路径和加载文件路径
5.自定义打印信息
在需要自定义打印信息文件上,添加
var logger = require('../logs/log').logger;
然后调用使用
logger.info("Test");
如果出现如下图显示,那么恭喜你,成功调用了。(因为测试,所以多打印了几条)
最后附上完整的日志显示截图。。
最后最后提醒一下,使用时注意路径的问题。。
。。就那么简单的一个功能,足足卡了我几天。(没看错,就是几天)。。。原因就是,log4js没有把加载文件和访问的路径写进生成的日志文件。上百度查来查来都是那几编教程,然后再去google查,还是那样。。。查找未果之后,只能自己默默探索了。。
为了避免大家跟着我踩坑,下面就直接上正确的代码了。。
1.下载log4js包(在自己项目下输入下面这个命令)
npm install log4js
2.创建一个log.js文件
var log4js = require('log4js');
log4js.configure({
appenders:[
{
type : "console",
category:"console" //设置后控制台不输出信息,可删除这句
},{
type:"dateFile",
filename:"../logs/log",
pattern: "_yyyy-MM-dd.log",
alwaysIncludePattern: true, //文件名是否始终包含占位符
absolute: false, //filename是否绝对路径
category: "dateFileLog"
}
],
replaceConsole: true,
levels:{
dateFileLog:"INFO", //设置记录器的默认显示级别,低于这个级别的日志,不会输出。其他级别(trace、debug、warn、error、fatal)
}
});
var dateFileLog = log4js.getLogger('dateFileLog');
exports.logger = dateFileLog;
exports.use = function(app){
//app.use(log4js.connectLogger(dateFileLog, {level:'INFO', format:':method :url'}));
app.use(log4js.connectLogger(dateFileLog, {level:'auto', format:':method :url'}));
}
3.在app.js文件中引入log.js文件
4.调用日志模板
*切记,必须放在app.use(logger.('dev'))前面,不然日志不打印访问的路径和加载文件路径
5.自定义打印信息
在需要自定义打印信息文件上,添加
var logger = require('../logs/log').logger;
然后调用使用
logger.info("Test");
如果出现如下图显示,那么恭喜你,成功调用了。(因为测试,所以多打印了几条)
最后附上完整的日志显示截图。。
最后最后提醒一下,使用时注意路径的问题。。
相关文章推荐
- node.js之express4.x使用命令创建一个ejs项目及常用命令
- 使用webstrom 新建node.js 项目 express + handlebars
- 使用Node.js的express框架建立项目
- node.js express使用log4js记录日志
- 第8章-使用Express.js和Hapi构建Node.js-REST-API服务-8.2.项目依赖
- 使用Node.js的express框架搭建一个简单项目并且添加了一个路由
- Node.JS 使用 Express 创建 Node.js Web 项目
- Node.js项目实战-构建可扩展的Web应用(第一版): 2 使用Express.js 4创建Web应用程序
- 从零开始-使用React+Webpack+Nodejs+Express快速构建项目
- Node.js项目实战-构建可扩展的Web应用(第一版):8 使用Express.js和Hapi构建Node.js REST API服务
- 使用Express创建node.js项目
- Node.js使用Express创建Web项目详细教程
- 在Node.js环境下使用Express创建Web项目
- 项目日志的管理和应用 log4js-Node.js中的日志管理模块使用与封装
- node.js+express+jade系列一:session的使用
- TWaver html5 + NodeJS + express + websocket.io + redis 快速搭建项目(二)
- 使用 NodeJS + Express 從 GET/POST Request 取值
- TWaver html5 + NodeJS + express + websocket.io + redis 快速搭建项目(一)
- nodejs express 创建项目
- log4js-Node.js中的日志管理模块使用与封装