fix: refactoring logs and adding pino logger for production and dev. (#236)

This commit is contained in:
Charles GTE
2026-03-29 11:22:28 +02:00
committed by GitHub
parent 057c192314
commit e1c0fc6917
24 changed files with 354 additions and 120 deletions
+46
View File
@@ -0,0 +1,46 @@
import pino, { type Logger } from "pino";
const isProd = process.env.NODE_ENV === "production";
function getLocalTimestamp() {
const date = new Date();
const formatted = new Intl.DateTimeFormat("en-US", {
timeZone: process.env.TZ,
year: "numeric",
month: "2-digit",
day: "2-digit",
hour: "2-digit",
minute: "2-digit",
second: "2-digit"
}).format(date).replace(" ", "T");
return `,"time":"${formatted}"`;
}
export const logger: Logger = pino({
level: isProd ? "info" : "debug",
base: null,
...(isProd
? {
timestamp: getLocalTimestamp,
formatters: {
level(label) {
return { level: label.toUpperCase() };
}
}
}
: {
timestamp: getLocalTimestamp,
transport: {
target: "pino-pretty",
options: {
colorize: true,
translateTime: "yyyy-mm-dd HH:MM:ss",
ignore: "pid,hostname",
levelFirst: true
}
}
})
});