nestjs-pino
nestjs-pino copied to clipboard
Out of date example on README for `pinoHttp` option
https://github.com/iamolegga/nestjs-pino/blob/18c701066d8ff38af5511f3665b9b3de511891f9/README.md#L229-L241
What does works:
LoggerModule.forRoot({
pinoHttp:
{
logger: pino({
useLevelLabels: true,
level: process.env.NODE_ENV !== 'production' ? 'debug' : 'info',
transport: process.env.NODE_ENV !== 'production'
? { target: 'pino-pretty' }
: undefined,
})
},
})
but I believe the semantics here isn't the same
useLevelLabels does not work for me , use code @micalevisk provided will initialize another logger instead of default logger, in my case I only specified a file stream it results to stdout and file.
Looks like new syntax is:
LoggerModule.forRoot({
pinoHttp: {
level: process.env.NODE_ENV !== 'production' ? 'debug' : 'info',
transport:
process.env.NODE_ENV !== 'production'
? { target: 'pino-pretty' }
: undefined,
},
}),
New update for replacing log level value to level label. Example:
{"level": 20} => {"level":"debug"}
LoggerModule.forRoot({
pinoHttp: {
logger: pino({
formatters: {
level: (label) => {
return { level: label }
},
},
level: process.env.NODE_ENV !== 'production' ? 'debug' : 'info',
}),
transport:
process.env.NODE_ENV !== 'production'
? { target: 'pino-pretty' }
: undefined,
},
})