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

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

相关推荐
星光不问赶路人4 小时前
Node.js 如何判断入口文件:从 require.main 到 ES Module 实现
前端·node.js
网络点点滴5 小时前
Node.js 中阻塞、非阻塞及异步特性
node.js
netkiller-BG7NYT8 小时前
yoloutils - Openclaw Agent Skill
前端·webpack·node.js
cypking10 小时前
npm 依赖包版本扫描提示插件Version Lens
前端·npm·node.js
研究点啥好呢19 小时前
Github热门项目推荐 | 创建你的像素风格!
c++·python·node.js·github·开源软件
孟祥_成都1 天前
复刻字节 AI 开发流:实践 Node.js 通用脚手架
前端·人工智能·node.js
BLUcoding1 天前
NVM for Windows 管理 Node.js 多版本
node.js
爱学习的程序媛1 天前
Node.js 异步任务协作:7 种实用方案与真实项目案例
node.js·异步编程
KevinCyao1 天前
node.js视频短信接口如何接入?使用异步非阻塞模式下发视频短信API
node.js
ZHANG13HAO1 天前
Python 调用 Node.js(vm2 沙箱)完美方案:胶水层实战教程
开发语言·python·node.js