UNPKG

@push.rocks/smartlog

Version:

A minimalistic, distributed, and extensible logging tool supporting centralized log management.

121 lines 8.7 kB
import * as plugins from './plugins.js'; // other beautylog classes import {} from '@push.rocks/consolecolor'; export class DestinationLocal { constructor() { this.previousMessage = ''; this.sameMessageCounter = 0; this.localBl = { silly: { prefix: plugins.consolecolor.coloredString(' silly ', 'white', 'blue') + ' ', textColor: 'blue', }, debug: { prefix: plugins.consolecolor.coloredString(' debug ', 'pink', 'black') + ' ', textColor: 'pink', }, error: { prefix: plugins.consolecolor.coloredString(' ', 'red', 'red') + plugins.consolecolor.coloredString(' ERROR! ', 'red', 'black') + ' ', textColor: 'red', }, info: { prefix: plugins.consolecolor.coloredString(' ', 'blue', 'blue') + plugins.consolecolor.coloredString(' info: ', 'blue', 'black') + ' ', textColor: 'white', }, note: { prefix: plugins.consolecolor.coloredString(' ', 'pink', 'pink') + plugins.consolecolor.coloredString(' note -> ', 'pink', 'black') + ' ', textColor: 'pink', }, ok: { prefix: plugins.consolecolor.coloredString(' ', 'green', 'green') + plugins.consolecolor.coloredString(' ok ', 'green', 'black') + ' ', textColor: 'green', }, success: { prefix: plugins.consolecolor.coloredString(' ', 'green', 'green') + plugins.consolecolor.coloredString(' SUCCESS! ', 'green', 'black') + ' ', textColor: 'green', }, warn: { prefix: plugins.consolecolor.coloredString(' ', 'orange', 'orange') + plugins.consolecolor.coloredString(' WARN -> ', 'orange', 'black') + ' ', textColor: 'orange', }, }; } /** * handles a log according to the smartlog standard * @param logPackage */ async handleLog(logPackage) { this.logToConsole(logPackage); } /** * creates a new empty line * @param linesArg * @returns void */ newLine(linesArg = 1) { for (let i = 0; i < linesArg; i++) { console.log('\n'); } } /** * logs a reduced log that only logs changes of consequential log messages */ logReduced(logTextArg, repeatEveryTimesArg = 0) { if (logTextArg === this.previousMessage && (repeatEveryTimesArg === 0 || this.sameMessageCounter !== repeatEveryTimesArg)) { this.sameMessageCounter++; } else { this.sameMessageCounter = 0; this.previousMessage = logTextArg; this.logToConsole({ timestamp: Date.now(), type: 'log', level: 'info', context: { company: 'undefined', companyunit: 'undefined', containerName: 'undefined', environment: 'test', runtime: 'node', zone: 'undefined', }, message: logTextArg, correlation: { id: 'none', type: 'none', }, }); } } // default logging logToConsole(logPackageArg) { try { const style = this.localBl[logPackageArg.level] ?? this.localBl.info; const logString = style.prefix + plugins.consolecolor.coloredString(logPackageArg.message, style.textColor); console.log(logString); return true; } catch (error) { // typo fix: use the defined error.prefix, not a non-existent errorPrefix console.log(this.localBl.error.prefix + 'You seem to have tried logging something strange ' + error); return false; } } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5kZXN0aW5hdGlvbmxvY2FsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfZGVzdGluYXRpb25fbG9jYWwvY2xhc3Nlcy5kZXN0aW5hdGlvbmxvY2FsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBR3hDLDBCQUEwQjtBQUMxQixPQUFPLEVBQW1CLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsTUFBTSxPQUFPLGdCQUFnQjtJQUE3QjtRQW9EVSxvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUM3Qix1QkFBa0IsR0FBVyxDQUFDLENBQUM7UUF5Qi9CLFlBQU8sR0FLWDtZQUNGLEtBQUssRUFBRTtnQkFDTCxNQUFNLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsR0FBRyxHQUFHO2dCQUM1RSxTQUFTLEVBQUUsTUFBTTthQUNsQjtZQUNELEtBQUssRUFBRTtnQkFDTCxNQUFNLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsR0FBRyxHQUFHO2dCQUM1RSxTQUFTLEVBQUUsTUFBTTthQUNsQjtZQUNELEtBQUssRUFBRTtnQkFDTCxNQUFNLEVBQ0osT0FBTyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUM7b0JBQ3JELE9BQU8sQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDO29CQUMvRCxHQUFHO2dCQUNMLFNBQVMsRUFBRSxLQUFLO2FBQ2pCO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFDSixPQUFPLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztvQkFDdkQsT0FBTyxDQUFD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