FactuGES_ERP/apps/server/src/config/log-config.ts
2026-02-12 15:46:47 +01:00

36 lines
1.6 KiB
TypeScript

import type { ILogger } from "@repo/rdx-logger";
import type { ConfigType } from "./config";
const redact = (value: string): string => {
if (value.length <= 4) return "***";
return `${value.slice(0, 2)}***${value.slice(-2)}`;
};
export const logConfigSummary = (config: ConfigType, logger: ILogger): void => {
logger.info("────────────────────────────────────────");
logger.info("Server configuration loaded");
logger.info("────────────────────────────────────────");
logger.info(`ENV : ${config.env}`);
logger.info(`API PORT : ${config.server.port}`);
logger.info(`API API_BASE_PATH : ${config.server.apiBasePath}`);
logger.info(`FRONTEND URL : ${config.server.frontendUrl}`);
logger.info(
`DB : ${config.database.dialect} ${config.database.host}:${config.database.port}/${config.database.name}`
);
logger.info(`DB SYNC MODE : ${config.database.syncMode}`);
logger.info(`JWT SECRET : ${redact(config.auth.jwt.secret)}`);
logger.info(`TEMPLATES PATH : ${config.paths.templates}`);
logger.info(`DOCUMENTS PATH : ${config.paths.documents}`);
logger.info(`SIGNING SERVICE : ${config.signingService.url}`);
logger.info(`CERTIFICATES : ${Object.keys(config.certificates).join(", ")}`);
logger.info("────────────────────────────────────────");
};