NodeJS log4js具有不同级别日志记录的appender

jhiyze9q  于 2023-08-04  发布在  Node.js
关注(0)|答案(2)|浏览(98)

我正在尝试创建一个日志记录器配置,它只将“ERROR”级别信息记录到控制台,将“DEBUG”级别信息记录到文件附加器。有谁能帮助我们用上面的配置创建一个日志记录器吗?
先谢谢你。非常感谢帮助

ej83mcc0

ej83mcc01#

var log4js = require('log4js');
log4js.configure({
  appenders: {
    everything: { type: 'stdout' },
    file_log: { type: 'file', filename: 'anyPath/all-logs.log' },
    logLevelFilter: {
      type: 'logLevelFilter',
      level: 'debug',
      appender: 'file_log',
    },
  },
  categories: {
    default: {
      appenders: ['logLevelFilter', 'everything'],
      level: 'all',
    },
  },
});
const logger = log4js.getLogger();

字符串
在此示例中,所有日志都将显示在控制台中,但只有 debug 级别及以上级别将添加到 * anyPath/all-logs.log * 文件中

7kjnsjlb

7kjnsjlb2#

对于控制台中的ERROR,您可以直接使用console.log语句。对于DEBUG,你可以在你的配置中添加如下感觉-

const log4js = require('log4js'); // include log4js
log4js.configure({
  appenders: { app: { type: 'file', filename: 'app.log' } },
  categories: { default: { appenders: ['app'], level: 'debug' } }
});

const logger = log4js.getLogger('app');
logger.debug('Your debug message');

字符串
您需要在配置文件中的类别中提供级别类别。
希望这能有所帮助。

相关问题