@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
72 lines • 9.49 kB
JavaScript
import { Injectable } from '@angular/core';
import { LogEntry } from '../models/log-entry';
import { LogLevel } from './log-level';
import * as i0 from "@angular/core";
import * as i1 from "./log-publisher.service";
import * as i2 from "../../configuration/configuration.service";
export class AbstractLoggerService {
publisherService;
config;
publisher;
constructor(publisherService, _config) {
this.publisherService = publisherService;
this.publisher = publisherService;
this.config = {
logWithDate: true,
serializeParams: true,
level: LogLevel.ALL
};
const servicesConfig = _config.get().services;
if (servicesConfig && servicesConfig.log) {
this.config = Object.assign(this.config, servicesConfig.log, { level: this.resolveLevel(servicesConfig.log.level) });
}
}
get level() {
return this.config.level;
}
shouldLog(level) {
return (level >= this.level && level !== LogLevel.OFF) || this.level === LogLevel.ALL;
}
writeToLog(level, message, params) {
if (!this.shouldLog(level)) {
return;
}
const entry = new LogEntry(level, message, params, this.config);
this.publisher.publish(entry);
}
info(message, ...params) {
this.writeToLog(LogLevel.INFO, message, params);
}
debug(message, ...params) {
this.writeToLog(LogLevel.DEBUG, message, params);
}
warn(message, ...params) {
this.writeToLog(LogLevel.WARN, message, params);
}
error(message, ...params) {
this.writeToLog(LogLevel.ERROR, message, params);
}
log(level, message, ...param) {
this.writeToLog(level, message, param);
}
resolveLevel(level) {
if (!level) {
return LogLevel.OFF;
}
return LogLevel[level];
}
}
export class LoggerService extends AbstractLoggerService {
constructor(publisherService, config) {
super(publisherService, config);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoggerService, deps: [{ token: i1.LogPublisherService }, { token: i2.ConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoggerService, providedIn: 'root' });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoggerService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}], ctorParameters: () => [{ type: i1.LogPublisherService }, { type: i2.ConfigurationService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2xvZ2dlci9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQXdCLE1BQU0scUJBQXFCLENBQUM7QUFFcEUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGFBQWEsQ0FBQzs7OztBQU9yQyxNQUFNLE9BQWdCLHFCQUFxQjtJQUtUO0lBSFgsTUFBTSxDQUFzQjtJQUM1QixTQUFTLENBQXNCO0lBRWxELFlBQThCLGdCQUFxQyxFQUFFLE9BQTZCO1FBQXBFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDL0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQztRQUNsQyxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1YsV0FBVyxFQUFFLElBQUk7WUFDakIsZUFBZSxFQUFFLElBQUk7WUFDckIsS0FBSyxFQUFFLFFBQVEsQ0FBQyxHQUFHO1NBQ3RCLENBQUM7UUFDRixNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO1FBQzlDLElBQUksY0FBYyxJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLEdBQUcsRUFBRSxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUMsQ0FBQyxDQUFDO1NBQ3RIO0lBQ0wsQ0FBQztJQUVELElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUVTLFNBQVMsQ0FBQyxLQUFlO1FBQy9CLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEtBQUssUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUMxRixDQUFDO0lBRVMsVUFBVSxDQUFDLEtBQWUsRUFBRSxPQUFlLEVBQUUsTUFBYztRQUNqRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixPQUFPO1NBQ1Y7UUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLElBQUksQ0FBQyxPQUFlLEVBQUUsR0FBRyxNQUFrQjtRQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTSxLQUFLLENBQUMsT0FBZSxFQUFFLEdBQUcsTUFBa0I7UUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sSUFBSSxDQUFDLE9BQWUsRUFBRSxHQUFHLE1BQWtCO1FBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFlLEVBQUUsR0FBRyxNQUFrQjtRQUMvQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxHQUFHLENBQUMsS0FBZSxFQUFFLE9BQWUsRUFBRSxHQUFHLEtBQWlCO1FBQzdELElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU8sWUFBWSxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztTQUN2QjtRQUNELE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBYSxDQUFDO0lBQ3ZDLENBQUM7Q0FDSjtBQUtELE1BQU0sT0FBTyxhQUFjLFNBQVEscUJBQXFCO0lBRXBELFlBQVksZ0JBQXFDLEVBQUUsTUFBNEI7UUFDM0UsS0FBSyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7d0dBSlEsYUFBYTs0R0FBYixhQUFhLGNBRlYsTUFBTTs7NEZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dFbnRyeSwgTG9nRW50cnlDb25maWd1cmF0aW9ufSBmcm9tICcuLi9tb2RlbHMvbG9nLWVudHJ5JztcbmltcG9ydCB7TG9nUHVibGlzaGVyU2VydmljZX0gZnJvbSAnLi9sb2ctcHVibGlzaGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtMb2dMZXZlbH0gZnJvbSAnLi9sb2ctbGV2ZWwnO1xuaW1wb3J0IHtDb25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2dlckNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBMb2dFbnRyeUNvbmZpZ3VyYXRpb24ge1xuICAgIGxldmVsPzogTG9nTGV2ZWw7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdExvZ2dlclNlcnZpY2Uge1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbmZpZzogTG9nZ2VyQ29uZmlndXJhdGlvbjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcHVibGlzaGVyOiBMb2dQdWJsaXNoZXJTZXJ2aWNlO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByaXZhdGUgcHVibGlzaGVyU2VydmljZTogTG9nUHVibGlzaGVyU2VydmljZSwgX2NvbmZpZzogQ29uZmlndXJhdGlvblNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5wdWJsaXNoZXIgPSBwdWJsaXNoZXJTZXJ2aWNlO1xuICAgICAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgICAgICAgIGxvZ1dpdGhEYXRlOiB0cnVlLFxuICAgICAgICAgICAgc2VyaWFsaXplUGFyYW1zOiB0cnVlLFxuICAgICAgICAgICAgbGV2ZWw6IExvZ0xldmVsLkFMTFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBzZXJ2aWNlc0NvbmZpZyA9IF9jb25maWcuZ2V0KCkuc2VydmljZXM7XG4gICAgICAgIGlmIChzZXJ2aWNlc0NvbmZpZyAmJiBzZXJ2aWNlc0NvbmZpZy5sb2cpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnID0gT2JqZWN0LmFzc2lnbih0aGlzLmNvbmZpZywgc2VydmljZXNDb25maWcubG9nLCB7bGV2ZWw6IHRoaXMucmVzb2x2ZUxldmVsKHNlcnZpY2VzQ29uZmlnLmxvZy5sZXZlbCl9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbGV2ZWwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5sZXZlbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2hvdWxkTG9nKGxldmVsOiBMb2dMZXZlbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKGxldmVsID49IHRoaXMubGV2ZWwgJiYgbGV2ZWwgIT09IExvZ0xldmVsLk9GRikgfHwgdGhpcy5sZXZlbCA9PT0gTG9nTGV2ZWwuQUxMO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB3cml0ZVRvTG9nKGxldmVsOiBMb2dMZXZlbCwgbWVzc2FnZTogc3RyaW5nLCBwYXJhbXM6IG9iamVjdCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuc2hvdWxkTG9nKGxldmVsKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVudHJ5ID0gbmV3IExvZ0VudHJ5KGxldmVsLCBtZXNzYWdlLCBwYXJhbXMsIHRoaXMuY29uZmlnKTtcbiAgICAgICAgdGhpcy5wdWJsaXNoZXIucHVibGlzaChlbnRyeSk7XG4gICAgfVxuXG4gICAgcHVibGljIGluZm8obWVzc2FnZTogc3RyaW5nLCAuLi5wYXJhbXM6IEFycmF5PGFueT4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cml0ZVRvTG9nKExvZ0xldmVsLklORk8sIG1lc3NhZ2UsIHBhcmFtcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGRlYnVnKG1lc3NhZ2U6IHN0cmluZywgLi4ucGFyYW1zOiBBcnJheTxhbnk+KTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVUb0xvZyhMb2dMZXZlbC5ERUJVRywgbWVzc2FnZSwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgd2FybihtZXNzYWdlOiBzdHJpbmcsIC4uLnBhcmFtczogQXJyYXk8YW55Pik6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlVG9Mb2coTG9nTGV2ZWwuV0FSTiwgbWVzc2FnZSwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZXJyb3IobWVzc2FnZTogc3RyaW5nLCAuLi5wYXJhbXM6IEFycmF5PGFueT4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cml0ZVRvTG9nKExvZ0xldmVsLkVSUk9SLCBtZXNzYWdlLCBwYXJhbXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBsb2cobGV2ZWw6IExvZ0xldmVsLCBtZXNzYWdlOiBzdHJpbmcsIC4uLnBhcmFtOiBBcnJheTxhbnk+KTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSwgcGFyYW0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzb2x2ZUxldmVsKGxldmVsOiBzdHJpbmcpOiBMb2dMZXZlbCB7XG4gICAgICAgIGlmICghbGV2ZWwpIHtcbiAgICAgICAgICAgIHJldHVybiBMb2dMZXZlbC5PRkY7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIExvZ0xldmVsW2xldmVsXSBhcyBMb2dMZXZlbDtcbiAgICB9XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9nZ2VyU2VydmljZSBleHRlbmRzIEFic3RyYWN0TG9nZ2VyU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaXNoZXJTZXJ2aWNlOiBMb2dQdWJsaXNoZXJTZXJ2aWNlLCBjb25maWc6IENvbmZpZ3VyYXRpb25TZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKHB1Ymxpc2hlclNlcnZpY2UsIGNvbmZpZyk7XG4gICAgfVxufVxuIl19