From ece475076e4577ac210f6b9f0b4922654837e7eb Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Sun, 23 Aug 2020 12:35:57 -0400 Subject: [PATCH] Added log colors and method name --- src/middleware/logger.js | 2 +- src/utils/logger.js | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/src/middleware/logger.js b/src/middleware/logger.js index 32e888b..43a0c36 100644 --- a/src/middleware/logger.js +++ b/src/middleware/logger.js @@ -1,6 +1,6 @@ const log = require('../utils/logger.js'); // log not logger to not interfere with function name module.exports = function logger (req, res, next) { - log.info('Request recieved: ' + req.url); + log.info("Request recieved: " + req.method + " " + req.url); next(); } \ No newline at end of file diff --git a/src/utils/logger.js b/src/utils/logger.js index 70fe13e..dd3f62c 100644 --- a/src/utils/logger.js +++ b/src/utils/logger.js @@ -7,6 +7,34 @@ const levels = { DEBUG: "DEBUG" }; +const colors = { + Reset: "\x1b[0m", + Bright: "\x1b[1m", + Dim: "\x1b[2m", + Underscore: "\x1b[4m", + Blink: "\x1b[5m", + Reverse: "\x1b[7m", + Hidden: "\x1b[8m", + + FgBlack: "\x1b[30m", + FgRed: "\x1b[31m", + FgGreen: "\x1b[32m", + FgYellow: "\x1b[33m", + FgBlue: "\x1b[34m", + FgMagenta: "\x1b[35m", + FgCyan: "\x1b[36m", + FgWhite: "\x1b[37m", + + BgBlack: "\x1b[40m", + BgRed: "\x1b[41m", + BgGreen: "\x1b[42m", + BgYellow: "\x1b[43m", + BgBlue: "\x1b[44m", + BgMagenta: "\x1b[45m", + BgCyan: "\x1b[46m", + BgWhite: "\x1b[47m", +} + const settings = { ERROR: true, WARN: true, @@ -21,8 +49,12 @@ if (config.mode === 'development') { function log(level, string) { if (!!settings[level]) { + let color = colors.Bright; + if (level === levels.ERROR) color = colors.FgRed; + if (level === levels.WARN) color = colors.FgYellow; + if (level.length === 4) {level = level + " "}; // ensure logs are aligned - console.log(level + " " + new Date().toISOString() + " : " + string); + console.log(colors.Dim, level + " " + new Date().toISOString() + ": ", color, string, colors.Reset); } }