我有使用express-pino-logger的现有代码。这句话对我们的elk堆栈设置很好,但是在本地运行时非常不幸(日志被缩小了json)。
我想用pino-pretty来局部使用而不是疼痛。
pino-pretty-express中有一个解决问题的替代方法,但它使用自己的漂亮格式化程序。如果可以的话,我想用皮诺伊斯的标准包装。
以下是我目前掌握的情况:
// with just pino-pretty installed, pino works out of the box
const pino = require('pino')
const logger = pino({
prettyPrint: true
})
logger.info('hi') // prints pretty
以及:
// adding this option to express-pino-logger, doesn't work
const pino = require('express-pino-logger')
const logger = pino({
prettyPrint: true
})
logger.info('hi') // does NOT print pretty
最佳答案
我想我已经解决了我自己的问题。
关键在于express-pino-logger页面上的最后一个示例:
'use strict'
const pino = require('pino')()
const expressPino = require('express-pino-logger')({
logger: pino
})
我的解决方案是:
// use pino-pretty and express-pino-logger together
const basicPino = require('pino')
const basicPinoLogger = basicPino({ prettyPrint: true })
const expressPino = require('express-pino-logger')({
logger: basicPinoLogger
})
const logger = expressPino.logger
logger.info('hi') // prints pretty