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);

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

相关推荐
阿珊和她的猫1 小时前
Webpack Loader 和 Plugin 实现原理详解
前端·webpack·node.js
luckyzlb3 小时前
03-node.js & webpack
前端·webpack·node.js
濮水大叔6 小时前
VonaJS: 直观好用的分布式锁
typescript·node.js·nestjs
濮水大叔7 小时前
VonaJS: I18n如何支持Swagger多语言
typescript·node.js·nestjs
孟陬8 小时前
Bun Test 不支持时间快进?我用这招让单元测试提速 8 倍!
node.js·测试·bun
Less^_^9 小时前
使用 Node.js 开发 Telegram Bot 完整指南
ai·node.js
防火墙在线17 小时前
前后端通信加解密(Web Crypto API )
前端·vue.js·网络协议·node.js·express
水冗水孚1 天前
效能工具(九)之编写nodejs脚本使用get-video-duration批量读取视频时长,并生成sql语句修复数据库表字段值
sql·node.js
huangql5201 天前
Vite与Webpack完全指南:从零开始理解前端构建工具
前端·webpack·node.js
api_180079054601 天前
【技术教程】Python/Node.js 调用拼多多商品详情 API 示例详解
大数据·开发语言·python·数据挖掘·node.js