@lodestar/beacon-node
Version:
A Typescript implementation of the beacon chain
22 lines • 912 B
JavaScript
import { Counter, Gauge, Histogram, Registry } from "prom-client";
import { AvgMinMax } from "./avgMinMax.js";
import { GaugeExtra } from "./gauge.js";
export class RegistryMetricCreator extends Registry {
gauge(configuration) {
return new GaugeExtra({ ...configuration, registers: [this] });
}
histogram(configuration) {
return new Histogram({ ...configuration, registers: [this] });
}
avgMinMax(configuration) {
return new AvgMinMax({ ...configuration, registers: [this] });
}
/** Static metric to send string-based data such as versions, config params, etc */
static({ name, help, value }) {
new Gauge({ name, help, labelNames: Object.keys(value), registers: [this] }).set(value, 1);
}
counter(configuration) {
return new Counter({ ...configuration, registers: [this] });
}
}
//# sourceMappingURL=registryMetricCreator.js.map