From 5ee7adbd0a6f0e635748a39bc88e145c9a1ffab4 Mon Sep 17 00:00:00 2001 From: Max Richter Date: Wed, 16 Aug 2023 23:51:56 +0200 Subject: [PATCH] feat: use LOG_LEVEL from env --- lib/env.ts | 7 +++++-- lib/log.ts | 13 +++++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/lib/env.ts b/lib/env.ts index 66de943..f18ad01 100644 --- a/lib/env.ts +++ b/lib/env.ts @@ -17,5 +17,8 @@ export const SESSION_DURATION = duration ? +duration : (60 * 60 * 24); export const JWT_SECRET = Deno.env.get("JWT_SECRET"); -export const TYPESENSE_URL = Deno.env.get("TYPESENSE_URL")||"http://localhost:8108" -export const TYPESENSE_API_KEY = Deno.env.get("TYPESENSE_API_KEY") +export const TYPESENSE_URL = Deno.env.get("TYPESENSE_URL") || + "http://localhost:8108"; +export const TYPESENSE_API_KEY = Deno.env.get("TYPESENSE_API_KEY"); + +export const LOG_LEVEL = Deno.env.get("LOG_LEVEL") || "warn"; diff --git a/lib/log.ts b/lib/log.ts index effa4d3..a22e725 100644 --- a/lib/log.ts +++ b/lib/log.ts @@ -1,4 +1,5 @@ -import { EventEmitter } from "https://deno.land/x/evtemitter@v3.0.0/mod.ts"; +import { EventEmitter } from "https://deno.land/x/evtemitter@v3.0.0/mod.ts" +import {LOG_LEVEL as _LOG_LEVEL} from "@lib/env.ts" enum LOG_LEVEL { DEBUG = 0, @@ -6,6 +7,14 @@ enum LOG_LEVEL { WARN = 2, ERROR = 3, } + +const logMap = { + "debug":LOG_LEVEL.DEBUG, + "info":LOG_LEVEL.INFO, + "warn":LOG_LEVEL.WARN, + "error":LOG_LEVEL.ERROR +} as const + const logFuncs = { [LOG_LEVEL.DEBUG]: console.debug, [LOG_LEVEL.INFO]: console.info, @@ -14,7 +23,7 @@ const logFuncs = { } as const; let longestScope = 0; -let logLevel = LOG_LEVEL.WARN; +let logLevel = (_LOG_LEVEL && _LOG_LEVEL in logMap && logMap[_LOG_LEVEL] )|| LOG_LEVEL.WARN; const ee = new EventEmitter<{ log: { level: LOG_LEVEL; scope: string; args: unknown[] };