hfs
Version:
HTTP File Server
29 lines (28 loc) • 1.26 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.consoleLog = void 0;
const events_1 = __importDefault(require("./events"));
const cross_1 = require("./cross");
const fs_1 = require("fs");
const argv_1 = require("./argv");
exports.consoleLog = [];
const f = argv_1.argv.consoleFile ? (0, fs_1.createWriteStream)(argv_1.argv.consoleFile, 'utf-8') : null;
for (const k of ['log', 'warn', 'error']) {
const original = console[k];
console[k] = (...args) => {
const ts = new Date();
const msg = args.join(' ');
const rec = { ts, k, msg };
exports.consoleLog.push(rec);
if (exports.consoleLog.length > 100000) // limit to avoid infinite space
exports.consoleLog.splice(0, 1000);
events_1.default.emit('console', rec);
f === null || f === void 0 ? void 0 : f.write(`${(0, cross_1.formatTimestamp)(ts)} [${k}] ${msg}\n`);
if (k !== 'log')
args.unshift('!');
return original((0, cross_1.formatTime)(ts), ...args); // bundled nodejs doesn't have locales (and apparently uses en-US)
};
}
;