diff options
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/api/index.ts | 9 | ||||
| -rw-r--r-- | packages/shared/config.ts | 2 | ||||
| -rw-r--r-- | packages/shared/logger.ts | 2 |
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}`, ), |
