nodejs日志管理log4js
常用的2种配置:
1.按文件大小分片,备份若干数量的文件
var log4js = require('log4js'); log4js.configure({
"appenders" : [
{"type" : "console"},
{
"type" : "file",
"filename" : "logs/app.log",
"maxLogSize" : 204800,
"backups" : 10,
"category" : "app"
}
],
"replaceConsole": true,
"levels" : {
"app" : "ALL"
}
}); var logger = log4js.getLogger('app'); app.use(log4js.connectLogger(logger, {format: ':remote-addr :method :url :status :response-time ms'})
2.按日期分片,此分片方式不可以进行大小和备份数量的限制
var log4js = require('log4js'); log4js.configure({
appenders : [
{type : 'console'},
{
type : 'dateFile',
filename : 'logs/app',
pattern : '-yyyy-MM-dd.log',
alwaysIncludePattern : true,
category : 'app'
}
],
replaceConsole: true
});
var logger = log4js.getLogger('app'); app.use(log4js.connectLogger(logger, {level: 'ALL', format: ':remote-addr :method :url :status :response-time ms'}));
多类型多应用文件分片配置:
log4js.configure({
"appenders" : [
{"type" : "console"},
{
"type" : "file",
"filename" : "logs/app1.log",
"maxLogSize" : 204800,
"backups" : 10,
"category" : "app1"
},
{
"type" : "file",
"filename" : "logs/app2.log",
"maxLogSize" : 204800,
"backups" : 10,
"category" : "app2"
},
{
"type" : "file",
"filename" : "logs/app3.log",
"maxLogSize" : 204800,
"backups" : 10,
"category" : "app3"
}
],
"replaceConsole": true,
"levels" : {
"app1" : "ALL", //等级可以设置ALL,AUTO,INFO,WARN,ERROR
"app2" : "ALL",
"app3" : "ALL"
}
});
模块化:
1.定义配置文件log4js.json
{
"appenders" : [
{"type" : "console"},
{
"type" : "dateFile",
"filename" : "logs/app",
"pattern" : "-yyyy-MM-dd.log",
"alwaysIncludePattern" : true,
"category" : "app"
}
],
"replaceConsole": true,
"levels" : {
"app" : "ALL"
}
}
2.自定义模块ms.js
/*
* log4js
*/
var log4js = require("log4js");
exports.log4js_config = require("../log4js.json");
log4js.configure(this.log4js_config);
exports.logger = log4js.getLogger("app");
3.使用方法
var ms = require("ms"); ms.logger.info("INFO TEST");
ms.logger.warn("WARN TEST");
ms.logger.error("ERROR TEST");
nodejs日志管理log4js的更多相关文章
- 玩转Nodejs日志管理log4js(转)
转自:http://blog.fens.me/nodejs-log4js/ 前言 日志对任何的应用来说都是至关重要的.在Nodejs中使用express框架并没有自带的日志模块,我们可以选择log4j ...
- Nodejs日志管理包
Nodejs日志管理工具包:log4js 和 winston 1.log4js的使用 1)package.json中加入依赖 "log4js":"~0.6.21" ...
- node 日志管理log4js
node 日志管理log4js 一.默认的控制台输出 我们使用express框架时,开发模式用node或者supervisor启动nodejs应用时,控制台都是显示如下的日志. GET /css/bo ...
- 日志管理log4js的配置
以前就是在app.js 直接用,今天把它抽出来了. log4js.json { "appenders": [ { "type":"console&qu ...
- nodejs之日志管理
开发一个项目时,可以通过控制台输出或者debug来获取到项目的运行信息.当项目上线时,我们就需要通过日志来分析.如同Java的log4j,nodejs中也有相关的log4js.使用过log4j的同学应 ...
- Linux_CentOS下搭建Nodejs 生产环境-以及nodejs进程管理器pm2的使用
nodejs安装:https://www.cnblogs.com/loaderman/p/11596661.html nodejs 进程管理器 pm2 的使用 PM2 是一款非常优秀的 Node 进程 ...
- 第13章 Linux日志管理
1. 日志管理 (1)简介 在CentOS 6.x中日志服务己经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日志文件的格式其 ...
- ABP(现代ASP.NET样板开发框架)系列之8、ABP日志管理
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之8.ABP日志管理 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...
- 【Java EE 学习 76 下】【数据采集系统第八天】【通过AOP实现日志管理】【日志管理功能分析和初步实现】
一.日志管理相关分析 1.日志管理是一种典型的系统级别的应用,非常适合使用spring AOP实现. 2.使用日志管理的目的:对系统修改的动作进行记录,比如对权限.角色.用户的写操作.修改操作.删除操 ...
随机推荐
- WPF 控件库——可拖动选项卡的TabControl
WPF 控件库系列博文地址: WPF 控件库——仿制Chrome的ColorPicker WPF 控件库——仿制Windows10的进度条 WPF 控件库——轮播控件 WPF 控件库——带有惯性的Sc ...
- Qt中QBitmap 的使用 --QBitmap的作用
特别注意:如果想把做一个先把图画在内存中,在显示到页面,不要使用bitmap,这个只有单色: 一般情况下QBitmap只作为图片掩码使用,比如做不规则窗口. QBitmap表示一种只有黑白的单色图片, ...
- C# enum 枚举 反射
枚举遍历 public enum EMyType { [System.ComponentModel.Description("A类型")] TypeA = 1, [System.C ...
- IDEA下载与安装
IntelliJ IDEA号称当前Java开发效率最高的IDE工具. IntelliJ IDEA有两个版本:社区版(Community)和旗舰版(Ultimate). 社区版 是免费的.开源的,但功能 ...
- F题(水题)
给出一个有N个数的序列,编号0 - N - 1.进行Q次查询,查询编号i至j的所有数中,最大的数是多少. 例如: 1 7 6 3 1.i = 1, j = 3,对应的数为7 6 3,最大的数为7. ...
- JSP页面导出PDF格式文件
JSP页面导出PDF格式文件基本在前端页面可以全部完成 <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/ ...
- JavaBean的概念
Java的一个特性,数据与行为相分离.数据就是成员变量,行为就是setter和getter方法 JavaBean是Java中开发的可以跨平台的重要组件,在JSP中常用来封装业务逻辑和数据库操作.Jav ...
- Linux管理命令
管理命令 用户管理: useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage 组管理: groupadd, groupdel, ...
- SLAM到底是什么?一文带你读懂SLAM
SLAM是Simultaneous localization and mapping缩写,意为“同步定位与建图”,主要用于解决机器人在未知环境运动时的定位与地图构建问题,为了让大家更多的了解SLAM, ...
- JavaScript的高级知识---词法分析
JavaScript的高级知识---词法分析 词法分析 词法分析方法: js运行前有一个类似编译的过程即词法分析,词法分析主要有三个步骤: 分析参数 再分析变量的声明 分析函数说明 函数在运行的瞬间, ...