From 6d5d746f68ef92c448a1f35765c42cb13e6b800c Mon Sep 17 00:00:00 2001 From: Boki Date: Sat, 21 Jun 2025 08:08:03 -0400 Subject: [PATCH] fixed issue with logger and hideObject --- .env | 2 +- apps/data-service/src/index.ts | 23 ++++++++++++----------- libs/logger/src/logger.ts | 25 ++----------------------- 3 files changed, 15 insertions(+), 35 deletions(-) diff --git a/.env b/.env index e648d2f..1ffd587 100644 --- a/.env +++ b/.env @@ -5,7 +5,7 @@ # Core Application Settings NODE_ENV=development LOG_LEVEL=debug -LOG_HIDE_OBJECT=true +LOG_HIDE_OBJECT=false # Data Service Configuration DATA_SERVICE_PORT=2001 diff --git a/apps/data-service/src/index.ts b/apps/data-service/src/index.ts index 56c7f15..d8c9ebc 100644 --- a/apps/data-service/src/index.ts +++ b/apps/data-service/src/index.ts @@ -28,6 +28,9 @@ if (config.log) { }); } +// Create logger AFTER config is set +const logger = getLogger('data-service'); + const app = new Hono(); // Add CORS middleware @@ -40,8 +43,6 @@ app.use( credentials: false, }) ); - -const logger = getLogger('data-service'); const PORT = serviceConfig.port; let server: ReturnType | null = null; // Singleton clients are managed in libraries @@ -131,17 +132,17 @@ async function initializeServices() { // Initialize providers (register handlers and scheduled jobs) logger.debug('Initializing data providers...'); const { initializeWebShareProvider } = await import('./providers/webshare.provider'); - const { initializeExchangeSyncProvider } = await import('./providers/exchange-sync.provider'); - const { initializeIBProvider } = await import('./providers/ib.provider'); - const { initializeProxyProvider } = await import('./providers/proxy.provider'); - const { initializeQMProvider } = await import('./providers/qm.provider'); + // const { initializeExchangeSyncProvider } = await import('./providers/exchange-sync.provider'); + // const { initializeIBProvider } = await import('./providers/ib.provider'); + // const { initializeProxyProvider } = await import('./providers/proxy.provider'); + // const { initializeQMProvider } = await import('./providers/qm.provider'); - - initializeExchangeSyncProvider(); - initializeIBProvider(); - initializeProxyProvider(); - initializeQMProvider(); initializeWebShareProvider(); + // initializeExchangeSyncProvider(); + // initializeIBProvider(); + // initializeProxyProvider(); + // initializeQMProvider(); + logger.info('Data providers initialized'); // Create scheduled jobs from registered handlers diff --git a/libs/logger/src/logger.ts b/libs/logger/src/logger.ts index fa7bf01..cc6d857 100644 --- a/libs/logger/src/logger.ts +++ b/libs/logger/src/logger.ts @@ -177,9 +177,9 @@ export class Logger { let data = { ...this.context, ...metadata }; - // Filter out objects if hideObject is enabled + // Hide all metadata if hideObject is enabled if (globalConfig.hideObject) { - data = this.filterObjects(data); + data = {}; // Clear all metadata } if (typeof message === 'string') { @@ -193,27 +193,6 @@ export class Logger { } } - /** - * Filter out objects from metadata when hideObject is enabled - */ - private filterObjects(data: Record): Record { - const filtered: Record = {}; - - for (const [key, value] of Object.entries(data)) { - if (typeof value === 'object' && value !== null && !Array.isArray(value)) { - // Keep error objects for debugging - if (key === 'err' || key === 'error' || value instanceof Error) { - filtered[key] = value; - } else { - filtered[key] = '[object hidden]'; - } - } else { - filtered[key] = value; - } - } - - return filtered; - } // Simple log level methods trace(message: string | object, metadata?: LogMetadata): void {