diff --git a/src/env.mjs b/src/env.mjs index 395706ec..6a5d926a 100644 --- a/src/env.mjs +++ b/src/env.mjs @@ -10,6 +10,7 @@ export const env = createEnv({ NEXT_PUBLIC_PROJECT_VERSION: z.string().optional(), NODE_ENV: z.enum(["development", "production"]).optional(), + LOG_LEVEL: z.enum(["debug", "info", "warn", "error"]).default("info"), DATABASE_URL: z.string().url().optional(), @@ -100,6 +101,7 @@ export const env = createEnv({ }, runtimeEnv: { NEXT_PUBLIC_PROJECT_VERSION: version || "Unknown Version", + LOG_LEVEL: process.env.LOG_LEVEL, PROJECT_NAME: process.env.PROJECT_NAME, PROJECT_DESCRIPTION: process.env.PROJECT_DESCRIPTION, diff --git a/src/lib/logger.ts b/src/lib/logger.ts index d96d3a4f..829d20fe 100644 --- a/src/lib/logger.ts +++ b/src/lib/logger.ts @@ -1,8 +1,9 @@ import pino, { type Logger } from "pino"; +import {env} from "@/env.mjs"; -const isProd = process.env.NODE_ENV === "production"; +const isProd = env.NODE_ENV === "production"; const defaultLevel = isProd ? "info" : "debug"; -const level = (process.env.LOG_LEVEL ?? defaultLevel) as pino.Level; +const level = (env.LOG_LEVEL ?? defaultLevel) as pino.Level; function getLocalTimestamp() { const date = new Date();