Closed zhex900 closed 3 years ago
I worked it out!
import { multistream } from "pino-multi-stream";
import { createStream } from "rotating-file-stream";
const stream = createStream("/tmp/file.log", {
size: "10M", // rotate every 10 MegaBytes written
interval: "5m", // rotate every 5 mins
compress: "gzip", // compress rotated files
});
const logger = pino(
{
prettyPrint: {
colorize: true,
errorLikeObjectKeys: ["err", "error", "details"],
levelFirst: true,
translateTime: "SYS:hh:MM:ss TT dd-mm-yyyy",
ignore: "pid,hostname,service",
messageFormat: (log, messageKey, levelLabel) => {
return applyServiceStyles(log, messageKey);
},
},
level: process.env.LOG_LEVEL || "debug",
serializers: {
error: pino.stdSerializers.err,
},
},
multistream([{ stream }])
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Hi,
Using transport as a separate process is not an option for me.
This is what I am using now.
Is it possible to do log rotation using
destination
? Like every 7 days.I read https://github.com/pinojs/pino/blob/master/docs/help.md#rotate I can't make sense of it. Can you give me an example?
Can I make pino work with https://www.npmjs.com/package/rotating-file-stream?