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.使用日志管理的目的:对系统修改的动作进行记录,比如对权限.角色.用户的写操作.修改操作.删除操 ...
随机推荐
- 小议C#接口的隐式与显示实现(续)
上文连接,讲的比较模糊,而且调用起来感觉比较混乱 http://www.cnblogs.com/walleyekneel/p/3581489.html 这次改为显式接口调用,可能项目也有这个一个需求 ...
- session的获取
Springmvc: RequestAttributes ra = RequestContextHolder.getRequestAttributes(); HttpServletRequest re ...
- php代码审计5审计命令执行漏洞
命令执行漏洞:通过易受攻击的应用程序在主机操作系统上执行任意命令,用户提供的数据(表单,cookie,http头等)未过滤 挖掘思路:用户能够控制函数输入,存在可执行代码的危险函数 命令执行和代码执行 ...
- luoguP3835 [模板]可持久化平衡树
https://www.luogu.org/problemnew/show/P3835 因为博主精力和实力有限,学不懂 fhq treap 了,因此只介绍 leafy tree 解法 leafy tr ...
- 八大排序算法的python实现(四)快速排序
代码: #coding:utf-8 #author:徐卜灵 #交换排序.快速排序 # 虽然快速排序称为分治法,但分治法这三个字显然无法很好的概括快速排序的全部步骤.因此我的对快速排序作了进一步的说明: ...
- MongoDB集群配置笔记
firewall-cmd --query-port=27017/tcp yum install system-config-firewall-tui firewall-cmd --zone=publi ...
- 品味ZooKeeper之纵古观今_1
品味ZooKeeper之纵古观今 本章思维导图 这一系列主要是从整体到细节来品味Zookeeper,先从宏观来展开,介绍zookeeper诞生的原因,接着介绍整体设计框架,接着是逐个细节击破. 本章是 ...
- c++继承构造析构调用原则以及特殊变量处理
一.继承中的构造析构调用原则 1.子类对象在创建时会首先调用父类的构造函数 2.父类构造函数执行结束后,执行子类构造函数 3.当父类构造函数有参数时,需要在子类的初始化列表中显示调用: 4.析构函数调 ...
- IntelliJ IDEA 把Maven项目导出可执行jar包
2017年04月05日 14:05:08 waterimelon 阅读数:1574 标签: intellij ideamaven 更多 个人分类: idea 第一步 第二步 第三步
- MacOs桌面自动被打乱的原因
1 系统设置--Mission Control -- 自动根据最近使用情况排序的勾勾去掉