aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2025-07-27 21:13:10 +0100
committerMohamedBassem <me@mbassem.com>2025-07-27 21:45:57 +0100
commit8fe4975c1fa84699abf1df76baf56717ce05a7d8 (patch)
tree65bc0dbe3055d567c19064eaea8c944ec078af03
parent802f93bc1bf2a3a247cb3751c4f5c9a67c2ab885 (diff)
downloadkarakeep-8fe4975c1fa84699abf1df76baf56717ce05a7d8.tar.zst
feat: Support NO_COLOR for logging. Fixes #1778
-rw-r--r--packages/api/index.ts9
-rw-r--r--packages/shared/config.ts2
-rw-r--r--packages/shared/logger.ts2
3 files changed, 10 insertions, 3 deletions
diff --git a/packages/api/index.ts b/packages/api/index.ts
index 1e353f41..44c40b0c 100644
--- a/packages/api/index.ts
+++ b/packages/api/index.ts
@@ -1,8 +1,9 @@
import { Hono } from "hono";
import { cors } from "hono/cors";
-import { logger } from "hono/logger";
+import { logger as loggerMiddleware } from "hono/logger";
import { poweredBy } from "hono/powered-by";
+import logger from "@karakeep/shared/logger";
import { Context } from "@karakeep/trpc";
import trpcAdapter from "./middlewares/trpcAdapter";
@@ -39,7 +40,11 @@ const app = new Hono<{
ctx: Context;
};
}>()
- .use(logger())
+ .use(
+ loggerMiddleware((str: string) => {
+ logger.info(str);
+ }),
+ )
.use(poweredBy())
.use(
cors({
diff --git a/packages/shared/config.ts b/packages/shared/config.ts
index a71014f0..86ff6235 100644
--- a/packages/shared/config.ts
+++ b/packages/shared/config.ts
@@ -77,6 +77,7 @@ const allEnv = z.object({
.transform((t) => t.split("%%").filter((a) => a)),
CRAWLER_SCREENSHOT_TIMEOUT_SEC: z.coerce.number().default(5),
LOG_LEVEL: z.string().default("debug"),
+ NO_COLOR: stringBool("false"),
DEMO_MODE: stringBool("false"),
DEMO_MODE_EMAIL: z.string().optional(),
DEMO_MODE_PASSWORD: z.string().optional(),
@@ -231,6 +232,7 @@ const serverConfigSchema = allEnv
numWorkers: val.SEARCH_NUM_WORKERS,
},
logLevel: val.LOG_LEVEL,
+ logNoColor: val.NO_COLOR,
demoMode: val.DEMO_MODE
? {
email: val.DEMO_MODE_EMAIL,
diff --git a/packages/shared/logger.ts b/packages/shared/logger.ts
index f406b447..efe78ff3 100644
--- a/packages/shared/logger.ts
+++ b/packages/shared/logger.ts
@@ -6,7 +6,7 @@ const logger = winston.createLogger({
level: serverConfig.logLevel,
format: winston.format.combine(
winston.format.timestamp(),
- winston.format.colorize(),
+ ...(serverConfig.logNoColor ? [] : [winston.format.colorize()]),
winston.format.printf(
(info) => `${info.timestamp} ${info.level}: ${info.message}`,
),