Add logger utility for formated and timestamped console output

This commit is contained in:
Anton Roslund 2026-01-05 15:58:27 +01:00
parent db4008d86a
commit 3cfb7e7dff
5 changed files with 37 additions and 0 deletions

View file

@ -1,6 +1,7 @@
// node src/admin.js --purge-node-id 123
// node src/admin.js --purge-node-id '!AABBCCDD'
require('./utils/logger');
const commandLineArgs = require("command-line-args");
const commandLineUsage = require("command-line-usage");

View file

@ -1,3 +1,4 @@
require('./utils/logger');
const path = require('path');
const express = require('express');
const compression = require('compression');

View file

@ -1,3 +1,4 @@
require('./utils/logger');
const crypto = require("crypto");
const path = require("path");
const mqtt = require("mqtt");

33
src/utils/logger.js Normal file
View file

@ -0,0 +1,33 @@
// Override console methods to add formatted timestamps
const originalLog = console.log;
const originalError = console.error;
const originalWarn = console.warn;
const originalInfo = console.info;
function formatTimestamp() {
const now = new Date();
const year = now.getFullYear();
const month = String(now.getMonth() + 1).padStart(2, '0');
const day = String(now.getDate()).padStart(2, '0');
const hours = String(now.getHours()).padStart(2, '0');
const minutes = String(now.getMinutes()).padStart(2, '0');
const seconds = String(now.getSeconds()).padStart(2, '0');
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
console.log = function(...args) {
originalLog(`${formatTimestamp()} [Info]`, ...args);
};
console.error = function(...args) {
originalError(`${formatTimestamp()} [Error]`, ...args);
};
console.warn = function(...args) {
originalWarn(`${formatTimestamp()} [Warn]`, ...args);
};
console.info = function(...args) {
originalInfo(`${formatTimestamp()} [Info]`, ...args);
};

View file

@ -1,3 +1,4 @@
require('./utils/logger');
const crypto = require("crypto");
const path = require("path");
const http = require("http");