首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >winston:如何更改时间戳格式

winston:如何更改时间戳格式
EN

Stack Overflow用户
提问于 2012-12-21 17:39:50
回答 4查看 26.2K关注 0票数 31

我正在使用winston在node.js中添加日志详细信息,我使用以下过程添加日志

代码语言:javascript
复制
 var winston = require('winston');         
 winston.remove(winston.transports.Console);
 winston.add(winston.transports.Console, {'timestamp':true,'colorize':true);
 winston.log('info','jjjj');

我得到的输出是

代码语言:javascript
复制
2012-12-21T09:32:05.428Z - info: jjjj

我需要为mytimestamp指定一种格式,在winston中有这样做的规定吗?如果有任何帮助,将不胜感激

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-12-21 20:21:43

timestamp选项可以是一个函数,它返回您希望将其另存为...

第4行:

代码语言:javascript
复制
winston.add(winston.transports.Console, {'timestamp':function() {return '111111111'; },'colorize':true});

来源:https://github.com/flatiron/winston/pull/120

票数 50
EN

Stack Overflow用户

发布于 2018-07-27 16:11:41

winston@3版本

代码语言:javascript
复制
winston.createLogger({
  format: winston.format.combine(
    winston.format.timestamp({format: 'YYYY-MM-DD HH:mm:ss'}),
    winston.format.prettyPrint()
  ),
  transports: [
    new winston.transports.Console()
  ]
})

要支持时区,您需要将format更改为winston将调用的函数。

代码语言:javascript
复制
const timezoned = () => {
  return new Date().toLocaleString('en-US', {
    timeZone: 'Asia/Shanghai'
  });
};

const logger = createLogger({
  format: combine(
    timestamp({
      format: timezonedTime
    })
  ),
  transport: [
    new transports.Console(),
  ]
});
票数 25
EN

Stack Overflow用户

发布于 2017-05-29 15:49:45

为了获得更好的结果,您可以使用momentjs

代码语言:javascript
复制
const moment = require('moment');
...
...
timestamp: () => moment().format('YYYY-MM-DD hh:mm:ss')
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13987631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档