diff --git a/content b/content index 7c2048b..97ddaec 160000 --- a/content +++ b/content @@ -1 +1 @@ -Subproject commit 7c2048b8ca8eb9ed419db554f40fbabe0b2ba14c +Subproject commit 97ddaec62a9e94bc111d14274f03ed15a6b97705 diff --git a/example.env b/example.env index 5ed0263..e40332c 100644 --- a/example.env +++ b/example.env @@ -58,3 +58,10 @@ NODE_ENV=development #NODE_ENV=testing #NODE_ENV=production + + +#LOG_LEVEL=debug +LOG_LEVEL=info +#LOG_LEVEL=warn +#LOG_LEVEL=error + diff --git a/src/utils/logging.js b/src/utils/logging.js index 1bc8004..5bfca14 100644 --- a/src/utils/logging.js +++ b/src/utils/logging.js @@ -18,6 +18,9 @@ debug: "blue", }, }; +const LOG_LEVEL = process.env.LOG_LEVEL?.toLowerCase() || "info"; +const LOG_LEVELS = customLevels.levels; + const UNCUGHT_EXCEPTION_MSG = "Uncaught Exception:"; const UNHANDLED_REJECTION_MSG = "Unhandled Rejection:"; @@ -66,6 +69,10 @@ const originalConsole = { ...console }; +function shouldLog(level) { + return LOG_LEVELS[level.toLowerCase()] <= LOG_LEVELS[LOG_LEVEL]; +} + // Create write streams const logStreams = { info: fs.createWriteStream(logFiles.info, { flags: "a" }), @@ -128,6 +135,8 @@ // Generic log writer with session logging function writeLog(level, stream, consoleFn, ...args) { + if (!shouldLog(level)) return; + const timestamp = new Date().toISOString(); const message = args.join(" "); const logLine = `[${timestamp}] [${level}] ${message}\n`; @@ -210,7 +219,7 @@ buildTransport("security", "security"), sessionTransport, // Add session transport to winston new transports.Console({ - level: "debug", + level: LOG_LEVEL, format: format.combine( format.colorize(), format.timestamp(), diff --git a/src/views/pages/stack.handlebars b/src/views/pages/stack.handlebars index 5ca4e71..a8240b9 100644 --- a/src/views/pages/stack.handlebars +++ b/src/views/pages/stack.handlebars @@ -7,11 +7,18 @@ {{#each tech}}
- {{#if svg}} - {{name}} logo - {{else if png}} - {{name}} logo - {{/if}} + + {{#if svg}} + {{#if png}} + + {{name}} logo + {{else}} + {{name}} logo + {{/if}} + {{else if png}} + {{name}} logo + {{/if}} +

{{name}}

{{description}}