diff --git a/src/config/logger.ts b/src/config/logger.ts new file mode 100644 index 0000000..990b32d --- /dev/null +++ b/src/config/logger.ts @@ -0,0 +1,26 @@ +import { env } from "./env.js"; +import { pino, type LoggerOptions } from "pino"; + +const loggerOptions: LoggerOptions = { + redact: env.isProduction ? ["hostname"] : [], + level: "info", + transport: env.isDev + ? { + target: "pino-pretty", + options: { + colorize: true, + translateTime: "SYS:standard", + }, + } + : undefined, + formatters: { + level(label) { + return { + level: label.toUpperCase(), + }; + }, + }, + timestamp: pino.stdTimeFunctions.isoTime, +}; + +export const logger = pino(loggerOptions);