我使用winston
进行记录,这是我的代码:
const { createLogger, format, transports } = require('winston')
const logger = createLogger({
level: 'info',
format: format.combine(
format.timestamp({format: 'YYYY-MM-DDTHH:mm:ss'}),
format.json()
),
transports: [new transports.File({filename: 'logs/new_combined.log'})]
})
logger.info('haha')
输出为:
{"message":"haha","level":"info","timestamp":"2019-01-03T11:13:32"}
我要调整输出顺序,以使timestamp
在前面,然后level
,然后在message
,如下所示:
{"timestamp":"2019-01-03T11:13:32","level":"info","message":"haha"}
该怎么做?
谢谢!
答案 0 :(得分:1)
这是使用winston.format.printf
format: format.combine(
format.timestamp({format: 'YYYY-MM-DDTHH:mm:ss'}),
format.printf(info => `${JSON.stringify({timestamp: info.timestamp, level: info.level, message: info.message})}`)
)