nodejs之log4js日志管理

log4js官网

javascript 复制代码
npm i log4js
javascript 复制代码
const log4js = require("log4js");
const path = require("path");
Object.defineProperties;
log4js.configure({
  appenders: {
    aaa: {
      type: "dateFile", //设置为这种类型,日志文件会分割
      filename: path.resolve(__dirname, "logs", "sql", "sql.log"), //文件名
      maxLogSize: 1024, //一个日志文件的大小,超过就备份新建
      keepFileExt: true, //新建的文件保存文件后缀
      numBackups: Number.MAX_SAFE_INTEGER - 1, //同时保存多少个文件
      layout: {
        type: "pattern", //自定义输出的内容
        pattern: "yyyy-MM-dd %m",
      },
    },
    default111: {
      type: "file",
      filename: path.resolve(__dirname, "logs", "default.log"),
    },
  },
  categories: {
    // log4js.getLogger("sql")这里相对应,要使用那个类别,
    sql: {
      appenders: ["aaa"], //要使用那个输出源,和上面的appenders对应
      level: "all", //这个类别啥等级才需要记录
    },
    default: {
      //默认类别,必须要有
      appenders: ["default111"],
      level: "all",
    },
  },
});
process.on("exit", () => {
  //必须有,当程序意外关闭的时候,必须先把日志写完
  log4js.shutdown();
});
const logger = log4js.getLogger("sql");
setInterval(() => {
  logger.info("你好,hi");
}, 100);

很简陋,就一些简单配置,其余的看官网

相关推荐
FungLeo6 小时前
成为全栈·Node 后端篇·文章 CRUD 与投稿状态机
node.js·状态机·crud·成为全栈
晴天169 小时前
Webpack3/4/5 核心差异、性能升级与迁移实战指南-Day38
webpack·node.js
大牧师10 小时前
Nest.js 微服务入门教程
开发语言·javascript·后端·微服务·node.js·nest.js·nest
wxwx_bscxy32221 小时前
NodeJS 高校学业预警系统10551
mysql·node.js·vue·高校学业预警
FungLeo1 天前
成为全栈·Node 后端篇·列表接口三件套:分页、筛选、排序
node.js·列表排序·列表分页·成为全栈·列表接口设计·列表筛选
晴天161 天前
浏览器中ESM与AMD模块共存的解决方案
前端·node.js
晴天161 天前
Node.js 模块化混合开发指南:CommonJS / ESM 混用适配方案与落地配置
node.js
FungLeo1 天前
成为全栈·Node 后端篇·分类与标签:多对多关系的建模与查询
node.js·成为全栈·分类与标签·多对多关系建模·多对多关系查询
晴天161 天前
ES 标准、V8 引擎与 Node.js 版本联动关系全解与实战踩坑
大数据·elasticsearch·node.js
晴天161 天前
Vite vs Webpack 全方位对比
前端·webpack·node.js