How can I manually set the level of a log when using Pino?
Here's some sample code:
const baseLogger = pino(loggerOptions);
const activityLogger = baseLogger.child({ name: "activity" });
const workerLogger = baseLogger.child({ name: "worker" });
Runtime.install({
logger: new DefaultLogger("INFO", (entry) => {
workerLogger.error({
level: entry.level.toLowerCase(),
message: entry.message,
timestamp: Number(entry.timestampNanos / BigInt(1000000)),
...entry.meta,
})
}
)
})
which produces logs like the following:
{"level":"error","time":1674573001943,"pid":95258,"name":"worker","level":"info","message":"Workflow bundle created","timestamp":1674573001943,"size":"0.70MB"}
Note that level
appears twice. Ideally I'd like to invoke workerLogger.log
and manually pass a level
field but it seems pino does not make this easy. Is there a way to log with pino but not use one of the default level functions like .info
, .debug
, etc...?