UNPKG

@loopback/metrics

Version:

An extension exposes metrics for Prometheus with LoopBack 4

33 lines 1.28 kB
"use strict"; // Copyright IBM Corp. and LoopBack contributors 2019,2020. All Rights Reserved. // Node module: @loopback/metrics // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.MetricsObserver = void 0; const tslib_1 = require("tslib"); const core_1 = require("@loopback/core"); const prom_client_1 = require("prom-client"); const keys_1 = require("../keys"); const types_1 = require("../types"); /** * An observer to set default Node.js metrics collection */ let MetricsObserver = class MetricsObserver { constructor(options = types_1.DEFAULT_METRICS_OPTIONS) { this.options = options; } start() { const defaultMetricsConfig = this.options.defaultMetrics; (0, prom_client_1.collectDefaultMetrics)(defaultMetricsConfig); } stop() { prom_client_1.register.clear(); } }; exports.MetricsObserver = MetricsObserver; exports.MetricsObserver = MetricsObserver = tslib_1.__decorate([ tslib_1.__param(0, (0, core_1.config)({ fromBinding: keys_1.MetricsBindings.COMPONENT })), tslib_1.__metadata("design:paramtypes", [Object]) ], MetricsObserver); //# sourceMappingURL=metrics.observer.js.map