为了账号安全,请及时绑定邮箱和手机立即绑定

在节点js的lof文件中打印日志时显示当前日期和时间

在节点js的lof文件中打印日志时显示当前日期和时间

呼啦一阵风 2021-10-21 16:52:22
你能告诉我如何在日志中打印/写入文件时添加时间戳吗?这意味着it shows current data and time在文件中打印日志时。我试过这样,但没有显示正确的输出。我加了这个const consoleLogger = new winston.transports.Console({  timestamp: function() {    const today = moment();    return today.format("DD-MM-YYYY");  },  format: winston.format.json(),  colorize: true,  level: "debug"});还是行不通https://codesandbox.io/s/beautiful-kapitsa-j1sku没有时间戳的当前输出{"message":"running → PORT (src/index.js:10)","level":"info"}
查看完整描述

2 回答

?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

希望以下解决方案对您有用。


const { createLogger, format, transports } = require('winston');

const { combine, timestamp, printf} = format;


const transport = new transports.Console({

  exitOnError: false,

  format: combine(

    ...(environment === 'dev' ? [format.colorize()] : []),

    timestamp(),

    printf(info => `${info.timestamp} [${info.level}]: ${info.message}`)

  ),

  colorize: true,

  level: 'debug',

});


const myFormat = printf(({ level, message, timestamp }) => {

  return `${timestamp} ${level}: ${message}`;

});


const logger = createLogger({

  format: combine(timestamp(), appendTimestamp({ tz: 'Add your timezone'}), myFormat),

  transports: [transport],

  exceptionHandlers: [

    new transports.File({

      filename: 'FILE_NAME.log'

    }),

  ],

});


查看完整回答
反对 回复 2021-10-21
  • 2 回答
  • 0 关注
  • 228 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信