`
364434006
  • 浏览: 591972 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Node.js日志管理log4js

 
阅读更多

 

log4js的输出级别6个: trace, debug, info, warn, error, fatal

 

1、安装log4js

npm install log4js

 

2、代码app.js

var express = require("express");
var app = express();

var log4js = require("./logger");
var logger = log4js.logger("normal","info");

/**
日志级别对应规则:
http responses 3xx, level = WARN
http responses 4xx & 5xx, level = ERROR
else, level = INFO
**/
app.use(log4js.connectLogger(logger,{level:"auto"}));

app.all("*",function(req,res,next){
	logger.info(req.ip+"  "+req.originalUrl+" access");
	next();
});

app.all("/hello",function(req,res,next){
	res.sendfile("hello.html");
});
app.all("/hello2",function(req,res,next){
	res.send("hello");
});

app.listen(3000,function(){
	logger.trace("服务启动trace");
	logger.debug("服务启动debug");
	logger.info("服务启动info");
	logger.warn("服务启动warn");
	logger.error("服务启动error");
	logger.fatal("服务启动fatal");
	console.log("服务启动console.log");
});

 

3、代码logger.js

var log4js = require("log4js");
log4js.configure({
	appenders:[
		{
			type:"console"//控制台输出日志
		},
		{
			type:"file",// 文件记录日志
			filename:'logs/access.log',// logs目录必须手动新建
			maxLogSize:1024,//文件最大size 单位:K
			backups:3,// 备份文件总数,默认1
			category:'normal'//日志类型,下面getLogger对象就是根据这个
		}
	],
	replaceConsole:true	//以[INFO] console代替console默认样式
});

exports.logger = function(category,level){
	var logger = log4js.getLogger(category);
	logger.setLevel(level);
	return logger;
}

exports.connectLogger = function(logger,options){
	return log4js.connectLogger(logger,options);
}

 

4、运行输出

分享到:
评论

相关推荐

    Node.js-《Node.js调试指南》

    在初识Node.js调试时,`console.log()`是最常用也是最基础的工具。通过在代码中插入`console.log()`语句,我们可以打印出变量的当前值,以追踪代码执行过程中的状态。 二、使用`debug模块` Node.js有一个名为`debug...

    Node.js 日志处理模块log4js

    log4js 是 Node.js 日志处理中的数一数二的模块。比起 console 或者 TJ 的 debug 有其优势,尤其针对投入生产的 Node.js 项目来说下面这些是不可少的: 日志分级 日志分类 日志落盘 本文将会给你一个 log4js 的...

    Node.js-winston-一个node.js多传输异步日志库

    `winston`是一款流行的、功能丰富的日志库,它支持多种传输方式和异步处理,使得在Node.js应用程序中进行日志管理变得简单高效。 **1. Winston核心特性** - **多传输(Multi-Transport)**:`winston`的一大亮点是...

    Node.js-基于express的访问日志记录器

    在Node.js开发中,日志记录是一个至关重要的环节,它帮助开发者追踪应用程序的运行状态、错误信息以及用户行为。Express.js作为Node.js中最流行的Web应用框架,提供了丰富的扩展性,让我们能够轻松定制自己的访问...

    Node.js — 概念1

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,由 Ryan Dahl 在2009年创建。它让开发者能够在服务器端使用 JavaScript 编程,打破了 JavaScript 仅限于客户端脚本语言的传统定位,极大地扩展了其应用...

    Node.js-使用Node.js和Puppeteer创建Web爬虫

    首先,你需要通过npm(Node.js的包管理器)安装Puppeteer。在命令行中运行以下命令: ``` npm install puppeteer ``` 2. **启动浏览器和页面** Puppeteer提供`puppeteer.launch()`方法启动一个浏览器实例,...

    Node.js-log-symbols-为各种日志级别提供着色的符号

    总的来说,`log-symbols`是Node.js开发中提高命令行日志可读性的实用工具,它通过色彩和符号使日志更加直观,提升了开发效率。如果你在开发命令行工具或服务时,面对大量的日志输出,不妨考虑使用`log-symbols`来...

    debug-log-Node.js0.12util.debuglog()ponyfill

    在Node.js环境中,调试日志记录是开发过程中不可或缺的一部分,它帮助开发者跟踪代码运行状态,定位问题。在Node.js 0.12版本中,`util.debuglog()`函数被引入,为开发者提供了一种安全、可控的方式来输出调试信息。...

    Node.js-ssh2-一个SSH2客户端和服务器node.js模块

    在 IT 领域,Node.js 是一个非常流行的 JavaScript 运行环境,它允许开发者使用 JavaScript 进行后端开发。在 Node.js 的生态系统中,`ssh2` 是一个强大的库,它提供了一个SSH2协议的客户端和服务器实现。这个模块...

    支持es6的node.js项目

    Node.js是一款基于Chrome V8引擎的JavaScript运行环境,它让JavaScript可以在服务器端执行,极大地拓宽了JavaScript的应用领域。自Node.js 4.0版本起,它开始内置对ECMAScript 2015(也被称为ES6或ES2015)的支持,...

    Node.js-console-log-level-最简单的记录器支持日志级别和自定义前缀

    总结一下,`console-log-level`是一个强大的日志工具,它提供日志级别控制和自定义前缀功能,使得在Node.js应用中进行日志管理变得更加灵活和高效。无论是在开发还是运维阶段,都能有效提升工作效率,确保应用程序的...

    node.js 物流查询小工具

    最后,对于日志记录和错误处理,开发者可能会使用`winston`或`log4js`等日志库,以便追踪和诊断可能出现的问题。良好的日志管理能帮助开发者快速定位并解决问题。 总的来说,"node.js 物流查询小工具"涉及的技术栈...

    node.js文档

    Node.js是一种开源的、跨平台的JavaScript运行环境,它使得开发者能够在服务器端使用JavaScript编写高效的应用程序。Node.js基于Google的V8引擎,该引擎最初是为了Chrome浏览器设计的,用于执行JavaScript代码。Node...

    高可用企业级Node.js应用视频教程下载

    我们将学习使用Prometheus、Grafana进行性能监控,以及使用Winston、Log4js等库进行日志记录和分析。 10. **安全性**:最后,我们将关注应用的安全性,涵盖认证授权(JWT)、防止XSS和CSRF攻击、HTTPS配置以及安全...

    Node.js-why-is-node-running-Node.js的运行但你不知道为什么吗?

    Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程。在"why-is-node-running"这个主题中,我们探讨的是Node.js应用程序在后台持续运行,而用户可能对其运行的原因和...

    Node.js-实现node.js来编写API实践全栈式撸代码

    Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它让开发者能够在服务器端使用JavaScript进行编程。这个技术的出现,使得前端开发者能够轻松地实现全栈式开发,将前后端技能融会贯通。"Node.js-实现node.js来...

    Node.js-CourierJS-事件消息传递中间件

    首先,你需要安装它,可以通过npm(Node.js的包管理器)来完成: ```bash npm install courierjs ``` 然后在你的Node.js应用中引入并初始化CourierJS: ```javascript const Courier = require('courierjs'); ...

Global site tag (gtag.js) - Google Analytics