log4js node日志插件

最近不是特别忙在用express搭建后台项目,在开发过程中遇到了需要输入日志的问

本来想直接用node自带的console来实现,后来发现console输出的日志达不到自己希望的

日志格式,后来各种百度发现了log4js插件,本文来记录log4js插件使用

日志显示如图

js 复制代码
const log4js = require('log4js');  
  
// 配置log4js  
log4js.configure({  
    appenders: {  
        // 定义一个appender,名为'out',类型为'stdout',表示日志将输出到控制台  
        out: { type: 'stdout' },  
        // 定义一个appender,名为'info',类型为'file',表示日志将被写入文件  
        // filename属性指定了日志文件的路径,这里设置为项目根目录下的'log.log'  
        info: { type: 'file', filename: './log.log' }   
    },  
    categories: {  
        // 定义一个日志类别'default',它使用'out'和'info'这两个appender  
        // level属性设置为'info',表示只有info级别及以上的日志会被记录  
        default: { appenders: ['out', 'info'], level: 'info' }  
        // 如果不想在控制台打印日志,可以去掉'appenders'数组中的'out'  
    }  
});  
  
// 获取一个日志记录器,名为'info',它将使用上面配置的'info' appender  
let logger = log4js.getLogger('info');  
  
// 将配置好的logger导出,以便在其他文件中使用  
module.exports = logger;

上面的代码配置了在express中使用log4js,以便同时在控制台和文件中记录日志。通过调整配置,你可以灵活地控制日志的输出方式和级别。

使用插件需要先

npm install log4js

在文件中引入

const log4js=require('log4js')

相关推荐
用户672465366058 小时前
Node 守护进程日志转发踩坑记:stdio 管道、UTF-8 截断,和一个字符串按值传参的故事
node.js
coderCN9 小时前
Nodejs express+knex(ORM框架)
前端·node.js
coderCN9 小时前
Nodejs mysql2+express+yaml
node.js
烬羽10 小时前
我把"时间胶囊"部署上腾讯云宝塔,跨域从根源消失了
nginx·node.js·全栈
__zRainy__11 小时前
Node系列 · Express:cookie 的基本概念
express
东风破_19 小时前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
东风破_19 小时前
danci 项目(三):从 JSON 数据到 AI Coding,真实项目里的数据清洗、Prompt 和工程规范
前端·后端·node.js
东风破_20 小时前
danci 项目(一):从需求到架构,一个单词学习系统为什么会这样设计
前端·后端·node.js
__zRainy__1 天前
Node系列 · Express:常用的中间件
中间件·node.js·express
FungLeo1 天前
成为全栈·Node 后端篇·框架选型:Express、Koa、Fastify、NestJS 的差异与为何选 Hono
express·koa·nest.js·fastify·hono