@ngworker/lumberjack
Version:
Lumberjack is a versatile Angular logging library, specifically designed to be extended and customized
32 lines • 4.85 kB
JavaScript
import { inject, Injectable } from '@angular/core';
import { LumberjackTimeService } from '../time/lumberjack-time.service';
import { LumberjackLoggerBuilder } from './lumberjack-logger.builder';
import { LumberjackLogger } from './lumberjack-logger.service';
import { LumberjackService } from './lumberjack.service';
import * as i0 from "@angular/core";
/**
* A scoped logger holds methods that log a predefined log sharing a scope.
*
* 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 with a
* predefined scope.
*/
export class ScopedLumberjackLogger extends LumberjackLogger {
lumberjack = inject(LumberjackService);
time = inject(LumberjackTimeService);
/**
* Create a logger builder for a log with the shared scope as well as the
* specified log level and message.
*/
createLoggerBuilder(level, message) {
return new LumberjackLoggerBuilder(this.lumberjack, this.time, level, message).withScope(this.scope);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: ScopedLumberjackLogger, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: ScopedLumberjackLogger });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: ScopedLumberjackLogger, decorators: [{
type: Injectable
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcGVkLWx1bWJlcmphY2stbG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZ3dvcmtlci9sdW1iZXJqYWNrL3NyYy9saWIvbG9nZ2luZy9zY29wZWQtbHVtYmVyamFjay1sb2dnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUluRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFFekQ7Ozs7Ozs7O0dBUUc7QUFFSCxNQUFNLE9BQWdCLHNCQUVwQixTQUFRLGdCQUEwQjtJQUNOLFVBQVUsR0FBRyxNQUFNLENBQThCLGlCQUFpQixDQUFDLENBQUM7SUFDcEUsSUFBSSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBSWpFOzs7T0FHRztJQUNnQixtQkFBbUIsQ0FDcEMsS0FBeUIsRUFDekIsT0FBZTtRQUVmLE9BQU8sSUFBSSx1QkFBdUIsQ0FBVyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakgsQ0FBQzt1R0FqQm1CLHNCQUFzQjsyR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQUQzQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEx1bWJlcmphY2tMb2dMZXZlbCB9IGZyb20gJy4uL2xvZ3MvbHVtYmVyamFjay1sb2ctbGV2ZWwnO1xuaW1wb3J0IHsgTHVtYmVyamFja0xvZ1BheWxvYWQgfSBmcm9tICcuLi9sb2dzL2x1bWJlcmphY2stbG9nLXBheWxvYWQnO1xuaW1wb3J0IHsgTHVtYmVyamFja1RpbWVTZXJ2aWNlIH0gZnJvbSAnLi4vdGltZS9sdW1iZXJqYWNrLXRpbWUuc2VydmljZSc7XG5cbmltcG9ydCB7IEx1bWJlcmphY2tMb2dnZXJCdWlsZGVyIH0gZnJvbSAnLi9sdW1iZXJqYWNrLWxvZ2dlci5idWlsZGVyJztcbmltcG9ydCB7IEx1bWJlcmphY2tMb2dnZXIgfSBmcm9tICcuL2x1bWJlcmphY2stbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTHVtYmVyamFja1NlcnZpY2UgfSBmcm9tICcuL2x1bWJlcmphY2suc2VydmljZSc7XG5cbi8qKlxuICogQSBzY29wZWQgbG9nZ2VyIGhvbGRzIG1ldGhvZHMgdGhhdCBsb2cgYSBwcmVkZWZpbmVkIGxvZyBzaGFyaW5nIGEgc2NvcGUuXG4gKlxuICogSW1wbGVtZW50IGFwcGxpY2F0aW9uLSBhbmQgbGlicmFyeS1zcGVjaWZpYyBsb2dnZXJzIGJ5IGV4dGVuZGluZyB0aGlzIGJhc2VcbiAqIGNsYXNzLiBPcHRpb25hbGx5IHN1cHBvcnRzIGEgbG9nIHBheWxvYWQuXG4gKlxuICogRWFjaCBwcm90ZWN0ZWQgbWV0aG9kIG9uIHRoaXMgYmFzZSBjbGFzcyByZXR1cm5zIGEgbG9nZ2VyIGJ1aWxkZXIgd2l0aCBhXG4gKiBwcmVkZWZpbmVkIHNjb3BlLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2NvcGVkTHVtYmVyamFja0xvZ2dlcjxcbiAgVFBheWxvYWQgZXh0ZW5kcyBMdW1iZXJqYWNrTG9nUGF5bG9hZCB8IHZvaWQgPSB2b2lkXG4+IGV4dGVuZHMgTHVtYmVyamFja0xvZ2dlcjxUUGF5bG9hZD4ge1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgbHVtYmVyamFjayA9IGluamVjdDxMdW1iZXJqYWNrU2VydmljZTxUUGF5bG9hZD4+KEx1bWJlcmphY2tTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IHRpbWUgPSBpbmplY3QoTHVtYmVyamFja1RpbWVTZXJ2aWNlKTtcblxuICBhYnN0cmFjdCByZWFkb25seSBzY29wZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2dnZXIgYnVpbGRlciBmb3IgYSBsb2cgd2l0aCB0aGUgc2hhcmVkIHNjb3BlIGFzIHdlbGwgYXMgdGhlXG4gICAqIHNwZWNpZmllZCBsb2cgbGV2ZWwgYW5kIG1lc3NhZ2UuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY3JlYXRlTG9nZ2VyQnVpbGRlcihcbiAgICBsZXZlbDogTHVtYmVyamFja0xvZ0xldmVsLFxuICAgIG1lc3NhZ2U6IHN0cmluZ1xuICApOiBMdW1iZXJqYWNrTG9nZ2VyQnVpbGRlcjxUUGF5bG9hZD4ge1xuICAgIHJldHVybiBuZXcgTHVtYmVyamFja0xvZ2dlckJ1aWxkZXI8VFBheWxvYWQ+KHRoaXMubHVtYmVyamFjaywgdGhpcy50aW1lLCBsZXZlbCwgbWVzc2FnZSkud2l0aFNjb3BlKHRoaXMuc2NvcGUpO1xuICB9XG59XG4iXX0=