@ngworker/lumberjack
Version:
Lumberjack is a versatile Angular logging library, specifically designed to be extended and customized
65 lines • 7.95 kB
JavaScript
import { inject, Injectable } from '@angular/core';
import { LumberjackTimeService } from '../time/lumberjack-time.service';
import { LumberjackLoggerBuilder } from './lumberjack-logger.builder';
import { LumberjackService } from './lumberjack.service';
import * as i0 from "@angular/core";
/**
* A logger holds methods that log a predefined log.
*
* Implement application- and library-specific loggers by extending this base
* class. Optionally supports a log payload.
*
* Each protected method on this base class returns a logger builder.
*/
export class LumberjackLogger {
lumberjack = inject(LumberjackService);
time = inject(LumberjackTimeService);
/**
* Create a logger builder for a critical log with the specified message.
*/
createCriticalLogger(message) {
return this.createLoggerBuilder('critical', message);
}
/**
* Create a logger builder for a debug log with the specified message.
*/
createDebugLogger(message) {
return this.createLoggerBuilder('debug', message);
}
/**
* Create a logger builder for an error log with the specified message.
*/
createErrorLogger(message) {
return this.createLoggerBuilder('error', message);
}
/**
* Create a logger builder for an info log with the specified message.
*/
createInfoLogger(message) {
return this.createLoggerBuilder('info', message);
}
/**
* Create a logger builder for a trace log with the specified message.
*/
createTraceLogger(message) {
return this.createLoggerBuilder('trace', message);
}
/**
* Create a logger builder for a warning log with the specified message.
*/
createWarningLogger(message) {
return this.createLoggerBuilder('warn', message);
}
/**
* Create a logger builder for a log with the specified log level and message.
*/
createLoggerBuilder(level, message) {
return new LumberjackLoggerBuilder(this.lumberjack, this.time, level, message);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: LumberjackLogger, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: LumberjackLogger });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: LumberjackLogger, decorators: [{
type: Injectable
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHVtYmVyamFjay1sb2dnZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nd29ya2VyL2x1bWJlcmphY2svc3JjL2xpYi9sb2dnaW5nL2x1bWJlcmphY2stbG9nZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFeEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRXpEOzs7Ozs7O0dBT0c7QUFFSCxNQUFNLE9BQWdCLGdCQUFnQjtJQUNqQixVQUFVLEdBQUcsTUFBTSxDQUE4QixpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BFLElBQUksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUV4RDs7T0FFRztJQUNPLG9CQUFvQixDQUFDLE9BQWU7UUFDNUMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNPLGlCQUFpQixDQUFDLE9BQWU7UUFDekMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNPLGlCQUFpQixDQUFDLE9BQWU7UUFDekMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNPLGdCQUFnQixDQUFDLE9BQWU7UUFDeEMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNPLGlCQUFpQixDQUFDLE9BQWU7UUFDekMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNPLG1CQUFtQixDQUFDLE9BQWU7UUFDM0MsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNPLG1CQUFtQixDQUFDLEtBQXlCLEVBQUUsT0FBZTtRQUN0RSxPQUFPLElBQUksdUJBQXVCLENBQVcsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzRixDQUFDO3VHQW5EbUIsZ0JBQWdCOzJHQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTHVtYmVyamFja0xvZ0xldmVsIH0gZnJvbSAnLi4vbG9ncy9sdW1iZXJqYWNrLWxvZy1sZXZlbCc7XG5pbXBvcnQgeyBMdW1iZXJqYWNrTG9nUGF5bG9hZCB9IGZyb20gJy4uL2xvZ3MvbHVtYmVyamFjay1sb2ctcGF5bG9hZCc7XG5pbXBvcnQgeyBMdW1iZXJqYWNrVGltZVNlcnZpY2UgfSBmcm9tICcuLi90aW1lL2x1bWJlcmphY2stdGltZS5zZXJ2aWNlJztcblxuaW1wb3J0IHsgTHVtYmVyamFja0xvZ2dlckJ1aWxkZXIgfSBmcm9tICcuL2x1bWJlcmphY2stbG9nZ2VyLmJ1aWxkZXInO1xuaW1wb3J0IHsgTHVtYmVyamFja1NlcnZpY2UgfSBmcm9tICcuL2x1bWJlcmphY2suc2VydmljZSc7XG5cbi8qKlxuICogQSBsb2dnZXIgaG9sZHMgbWV0aG9kcyB0aGF0IGxvZyBhIHByZWRlZmluZWQgbG9nLlxuICpcbiAqIEltcGxlbWVudCBhcHBsaWNhdGlvbi0gYW5kIGxpYnJhcnktc3BlY2lmaWMgbG9nZ2VycyBieSBleHRlbmRpbmcgdGhpcyBiYXNlXG4gKiBjbGFzcy4gT3B0aW9uYWxseSBzdXBwb3J0cyBhIGxvZyBwYXlsb2FkLlxuICpcbiAqIEVhY2ggcHJvdGVjdGVkIG1ldGhvZCBvbiB0aGlzIGJhc2UgY2xhc3MgcmV0dXJucyBhIGxvZ2dlciBidWlsZGVyLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTHVtYmVyamFja0xvZ2dlcjxUUGF5bG9hZCBleHRlbmRzIEx1bWJlcmphY2tMb2dQYXlsb2FkIHwgdm9pZCA9IHZvaWQ+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGx1bWJlcmphY2sgPSBpbmplY3Q8THVtYmVyamFja1NlcnZpY2U8VFBheWxvYWQ+PihMdW1iZXJqYWNrU2VydmljZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSB0aW1lID0gaW5qZWN0KEx1bWJlcmphY2tUaW1lU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGxvZ2dlciBidWlsZGVyIGZvciBhIGNyaXRpY2FsIGxvZyB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVDcml0aWNhbExvZ2dlcihtZXNzYWdlOiBzdHJpbmcpOiBMdW1iZXJqYWNrTG9nZ2VyQnVpbGRlcjxUUGF5bG9hZD4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUxvZ2dlckJ1aWxkZXIoJ2NyaXRpY2FsJywgbWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbG9nZ2VyIGJ1aWxkZXIgZm9yIGEgZGVidWcgbG9nIHdpdGggdGhlIHNwZWNpZmllZCBtZXNzYWdlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGNyZWF0ZURlYnVnTG9nZ2VyKG1lc3NhZ2U6IHN0cmluZyk6IEx1bWJlcmphY2tMb2dnZXJCdWlsZGVyPFRQYXlsb2FkPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlTG9nZ2VyQnVpbGRlcignZGVidWcnLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2dnZXIgYnVpbGRlciBmb3IgYW4gZXJyb3IgbG9nIHdpdGggdGhlIHNwZWNpZmllZCBtZXNzYWdlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGNyZWF0ZUVycm9yTG9nZ2VyKG1lc3NhZ2U6IHN0cmluZyk6IEx1bWJlcmphY2tMb2dnZXJCdWlsZGVyPFRQYXlsb2FkPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlTG9nZ2VyQnVpbGRlcignZXJyb3InLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2dnZXIgYnVpbGRlciBmb3IgYW4gaW5mbyBsb2cgd2l0aCB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UuXG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlSW5mb0xvZ2dlcihtZXNzYWdlOiBzdHJpbmcpOiBMdW1iZXJqYWNrTG9nZ2VyQnVpbGRlcjxUUGF5bG9hZD4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUxvZ2dlckJ1aWxkZXIoJ2luZm8nLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2dnZXIgYnVpbGRlciBmb3IgYSB0cmFjZSBsb2cgd2l0aCB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UuXG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlVHJhY2VMb2dnZXIobWVzc2FnZTogc3RyaW5nKTogTHVtYmVyamFja0xvZ2dlckJ1aWxkZXI8VFBheWxvYWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVMb2dnZXJCdWlsZGVyKCd0cmFjZScsIG1lc3NhZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGxvZ2dlciBidWlsZGVyIGZvciBhIHdhcm5pbmcgbG9nIHdpdGggdGhlIHNwZWNpZmllZCBtZXNzYWdlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGNyZWF0ZVdhcm5pbmdMb2dnZXIobWVzc2FnZTogc3RyaW5nKTogTHVtYmVyamFja0xvZ2dlckJ1aWxkZXI8VFBheWxvYWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVMb2dnZXJCdWlsZGVyKCd3YXJuJywgbWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbG9nZ2VyIGJ1aWxkZXIgZm9yIGEgbG9nIHdpdGggdGhlIHNwZWNpZmllZCBsb2cgbGV2ZWwgYW5kIG1lc3NhZ2UuXG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlTG9nZ2VyQnVpbGRlcihsZXZlbDogTHVtYmVyamFja0xvZ0xldmVsLCBtZXNzYWdlOiBzdHJpbmcpOiBMdW1iZXJqYWNrTG9nZ2VyQnVpbGRlcjxUUGF5bG9hZD4ge1xuICAgIHJldHVybiBuZXcgTHVtYmVyamFja0xvZ2dlckJ1aWxkZXI8VFBheWxvYWQ+KHRoaXMubHVtYmVyamFjaywgdGhpcy50aW1lLCBsZXZlbCwgbWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==