@libp2p/prometheus-metrics 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,8 +2,8 @@ import type { CounterGroup, CalculatedMetricOptions } from '@libp2p/interface-me
2
2
  export declare class PrometheusCounterGroup implements CounterGroup {
3
3
  private readonly counter;
4
4
  private readonly label;
5
- constructor(name: string, opts: CalculatedMetricOptions<Record<string, number | bigint>>);
6
- increment(values: Record<string, number | bigint | unknown>): void;
5
+ constructor(name: string, opts: CalculatedMetricOptions<Record<string, number>>);
6
+ increment(values: Record<string, number | unknown>): void;
7
7
  reset(): void;
8
8
  }
9
9
  //# sourceMappingURL=counter-group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"counter-group.d.ts","sourceRoot":"","sources":["../../src/counter-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAmB,MAAM,2BAA2B,CAAA;AAIvG,qBAAa,sBAAuB,YAAW,YAAY;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAEjB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IA6BzF,SAAS,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAUnE,KAAK,IAAK,IAAI;CAGf"}
1
+ {"version":3,"file":"counter-group.d.ts","sourceRoot":"","sources":["../../src/counter-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAmB,MAAM,2BAA2B,CAAA;AAIvG,qBAAa,sBAAuB,YAAW,YAAY;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAEjB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IA2BhF,SAAS,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAQ1D,KAAK,IAAK,IAAI;CAGf"}
@@ -12,9 +12,7 @@ export class PrometheusCounterGroup {
12
12
  collect = async function () {
13
13
  const values = await calculate();
14
14
  Object.entries(values).forEach(([key, value]) => {
15
- // prom-client does not support bigints for values
16
- // https://github.com/siimon/prom-client/issues/259
17
- this.inc({ [label]: key }, Number(value));
15
+ this.inc({ [label]: key }, value);
18
16
  });
19
17
  };
20
18
  }
@@ -27,9 +25,7 @@ export class PrometheusCounterGroup {
27
25
  }
28
26
  increment(values) {
29
27
  Object.entries(values).forEach(([key, value]) => {
30
- // prom-client does not support bigints for values
31
- // https://github.com/siimon/prom-client/issues/259
32
- const inc = typeof value === 'number' || typeof value === 'bigint' ? Number(value) : 1;
28
+ const inc = typeof value === 'number' ? value : 1;
33
29
  this.counter.inc({ [this.label]: key }, inc);
34
30
  });
35
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"counter-group.js","sourceRoot":"","sources":["../../src/counter-group.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAmB,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,sBAAsB;IAIjC,YAAa,IAAY,EAAE,IAA8D;QACvF,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAA;QAC9D,IAAI,OAAsD,CAAA;QAE1D,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAAqD,IAAI,CAAC,SAAS,CAAA;YAElF,OAAO,GAAG,KAAK;gBACb,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;gBAEhC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC9C,kDAAkD;oBAClD,mDAAmD;oBACnD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;YACJ,CAAC,CAAA;SACF;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC;YAC7B,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAE,MAAiD;QAC1D,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9C,kDAAkD;YAClD,mDAAmD;YACnD,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAEtF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"counter-group.js","sourceRoot":"","sources":["../../src/counter-group.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAmB,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,sBAAsB;IAIjC,YAAa,IAAY,EAAE,IAAqD;QAC9E,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAA;QAC9D,IAAI,OAAsD,CAAA;QAE1D,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAA4C,IAAI,CAAC,SAAS,CAAA;YAEzE,OAAO,GAAG,KAAK;gBACb,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;gBAEhC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC9C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;YACJ,CAAC,CAAA;SACF;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC;YAC7B,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAE,MAAwC;QACjD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAEjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACF"}
@@ -2,7 +2,7 @@ import type { Counter, CalculatedMetricOptions } from '@libp2p/interface-metrics
2
2
  export declare class PrometheusCounter implements Counter {
3
3
  private readonly counter;
4
4
  constructor(name: string, opts: CalculatedMetricOptions);
5
- increment(value?: number | bigint): void;
5
+ increment(value?: number): void;
6
6
  reset(): void;
7
7
  }
8
8
  //# sourceMappingURL=counter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"counter.d.ts","sourceRoot":"","sources":["../../src/counter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAIjF,qBAAa,iBAAkB,YAAW,OAAO;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;gBAExB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB;IAyBxD,SAAS,CAAE,KAAK,GAAE,MAAM,GAAG,MAAU,GAAG,IAAI;IAM5C,KAAK,IAAK,IAAI;CAGf"}
1
+ {"version":3,"file":"counter.d.ts","sourceRoot":"","sources":["../../src/counter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAIjF,qBAAa,iBAAkB,YAAW,OAAO;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;gBAExB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB;IAyBxD,SAAS,CAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAInC,KAAK,IAAK,IAAI;CAGf"}
@@ -11,7 +11,7 @@ export class PrometheusCounter {
11
11
  const calculate = opts.calculate;
12
12
  collect = async function () {
13
13
  const value = await calculate();
14
- this.inc(Number(value));
14
+ this.inc(value);
15
15
  };
16
16
  }
17
17
  this.counter = new PromCounter({
@@ -22,9 +22,7 @@ export class PrometheusCounter {
22
22
  });
23
23
  }
24
24
  increment(value = 1) {
25
- // prom-client does not support bigints for values
26
- // https://github.com/siimon/prom-client/issues/259
27
- this.counter.inc(Number(value));
25
+ this.counter.inc(value);
28
26
  }
29
27
  reset() {
30
28
  this.counter.reset();
@@ -1 +1 @@
1
- {"version":3,"file":"counter.js","sourceRoot":"","sources":["../../src/counter.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,OAAO,IAAI,WAAW,EAAE,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,iBAAiB;IAG5B,YAAa,IAAY,EAAE,IAA6B;QACtD,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,IAAI,OAAsD,CAAA;QAE1D,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;YAEhC,OAAO,GAAG,KAAK;gBACb,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAA;gBAE/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACzB,CAAC,CAAA;SACF;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC;YAC7B,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,MAAM;YAClB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAE,QAAyB,CAAC;QACnC,kDAAkD;QAClD,mDAAmD;QACnD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IACjC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"counter.js","sourceRoot":"","sources":["../../src/counter.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,OAAO,IAAI,WAAW,EAAE,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,iBAAiB;IAG5B,YAAa,IAAY,EAAE,IAA6B;QACtD,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,IAAI,OAAsD,CAAA;QAE1D,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;YAEhC,OAAO,GAAG,KAAK;gBACb,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAA;gBAE/B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC,CAAA;SACF;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC;YAC7B,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,MAAM;YAClB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAE,QAAgB,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACF"}
@@ -2,9 +2,9 @@ import type { CalculatedMetricOptions, MetricGroup, StopTimer } from '@libp2p/in
2
2
  export declare class PrometheusMetricGroup implements MetricGroup {
3
3
  private readonly gauge;
4
4
  private readonly label;
5
- constructor(name: string, opts: CalculatedMetricOptions<Record<string, number | bigint>>);
6
- update(values: Record<string, number | bigint>): void;
7
- increment(values: Record<string, number | bigint | unknown>): void;
5
+ constructor(name: string, opts: CalculatedMetricOptions<Record<string, number>>);
6
+ update(values: Record<string, number>): void;
7
+ increment(values: Record<string, number | unknown>): void;
8
8
  decrement(values: Record<string, number | unknown>): void;
9
9
  reset(): void;
10
10
  timer(key: string): StopTimer;
@@ -1 +1 @@
1
- {"version":3,"file":"metric-group.d.ts","sourceRoot":"","sources":["../../src/metric-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAmB,WAAW,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAIjH,qBAAa,qBAAsB,YAAW,WAAW;IACvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAEjB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IA6BzF,MAAM,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,IAAI;IAQtD,SAAS,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAUnE,SAAS,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAU1D,KAAK,IAAK,IAAI;IAId,KAAK,CAAE,GAAG,EAAE,MAAM,GAAG,SAAS;CAK/B"}
1
+ {"version":3,"file":"metric-group.d.ts","sourceRoot":"","sources":["../../src/metric-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAmB,WAAW,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAIjH,qBAAa,qBAAsB,YAAW,WAAW;IACvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;gBAEjB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IA2BhF,MAAM,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAM7C,SAAS,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAQ1D,SAAS,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAQ1D,KAAK,IAAK,IAAI;IAId,KAAK,CAAE,GAAG,EAAE,MAAM,GAAG,SAAS;CAK/B"}
@@ -12,9 +12,7 @@ export class PrometheusMetricGroup {
12
12
  collect = async function () {
13
13
  const values = await calculate();
14
14
  Object.entries(values).forEach(([key, value]) => {
15
- // prom-client does not support bigints for values
16
- // https://github.com/siimon/prom-client/issues/259
17
- this.set({ [label]: key }, Number(value));
15
+ this.set({ [label]: key }, value);
18
16
  });
19
17
  };
20
18
  }
@@ -27,24 +25,18 @@ export class PrometheusMetricGroup {
27
25
  }
28
26
  update(values) {
29
27
  Object.entries(values).forEach(([key, value]) => {
30
- // prom-client does not support bigints for values
31
- // https://github.com/siimon/prom-client/issues/259
32
- this.gauge.set({ [this.label]: key }, Number(value));
28
+ this.gauge.set({ [this.label]: key }, value);
33
29
  });
34
30
  }
35
31
  increment(values) {
36
32
  Object.entries(values).forEach(([key, value]) => {
37
- // prom-client does not support bigints for values
38
- // https://github.com/siimon/prom-client/issues/259
39
- const inc = typeof value === 'number' || typeof value === 'bigint' ? Number(value) : 1;
33
+ const inc = typeof value === 'number' ? value : 1;
40
34
  this.gauge.inc({ [this.label]: key }, inc);
41
35
  });
42
36
  }
43
37
  decrement(values) {
44
38
  Object.entries(values).forEach(([key, value]) => {
45
- // prom-client does not support bigints for values
46
- // https://github.com/siimon/prom-client/issues/259
47
- const dec = typeof value === 'number' || typeof value === 'bigint' ? Number(value) : 1;
39
+ const dec = typeof value === 'number' ? value : 1;
48
40
  this.gauge.dec({ [this.label]: key }, dec);
49
41
  });
50
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"metric-group.js","sourceRoot":"","sources":["../../src/metric-group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metric-group.js","sourceRoot":"","sources":["../../src/metric-group.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,qBAAqB;IAIhC,YAAa,IAAY,EAAE,IAAqD;QAC9E,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAA;QAC9D,IAAI,OAAgD,CAAA;QAEpD,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAA4C,IAAI,CAAC,SAAS,CAAA;YAEzE,OAAO,GAAG,KAAK;gBACb,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;gBAEhC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC9C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;YACJ,CAAC,CAAA;SACF;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC;YACrB,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAE,MAA8B;QACpC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAE,MAAwC;QACjD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAEjD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAE,MAAwC;QACjD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAEjD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAED,KAAK,CAAE,GAAW;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAC3B,GAAG,EAAE,CAAC;SACP,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -2,9 +2,9 @@ import type { Metric, CalculatedMetricOptions, StopTimer } from '@libp2p/interfa
2
2
  export declare class PrometheusMetric implements Metric {
3
3
  private readonly gauge;
4
4
  constructor(name: string, opts: CalculatedMetricOptions);
5
- update(value: number | bigint): void;
6
- increment(value?: number | bigint): void;
7
- decrement(value?: number | bigint): void;
5
+ update(value: number): void;
6
+ increment(value?: number): void;
7
+ decrement(value?: number): void;
8
8
  reset(): void;
9
9
  timer(): StopTimer;
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"metric.d.ts","sourceRoot":"","sources":["../../src/metric.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAI3F,qBAAa,gBAAiB,YAAW,MAAM;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;gBAEhB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB;IA2BxD,MAAM,CAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAMrC,SAAS,CAAE,KAAK,GAAE,MAAM,GAAG,MAAU,GAAG,IAAI;IAM5C,SAAS,CAAE,KAAK,GAAE,MAAM,GAAG,MAAU,GAAG,IAAI;IAM5C,KAAK,IAAK,IAAI;IAId,KAAK,IAAK,SAAS;CAGpB"}
1
+ {"version":3,"file":"metric.d.ts","sourceRoot":"","sources":["../../src/metric.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAI3F,qBAAa,gBAAiB,YAAW,MAAM;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;gBAEhB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB;IAyBxD,MAAM,CAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5B,SAAS,CAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAInC,SAAS,CAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAInC,KAAK,IAAK,IAAI;IAId,KAAK,IAAK,SAAS;CAGpB"}
@@ -11,9 +11,7 @@ export class PrometheusMetric {
11
11
  const calculate = opts.calculate;
12
12
  collect = async function () {
13
13
  const value = await calculate();
14
- // prom-client does not support bigints for values
15
- // https://github.com/siimon/prom-client/issues/259
16
- this.set(Number(value));
14
+ this.set(value);
17
15
  };
18
16
  }
19
17
  this.gauge = new Gauge({
@@ -24,19 +22,13 @@ export class PrometheusMetric {
24
22
  });
25
23
  }
26
24
  update(value) {
27
- // prom-client does not support bigints for values
28
- // https://github.com/siimon/prom-client/issues/259
29
- this.gauge.set(Number(value));
25
+ this.gauge.set(value);
30
26
  }
31
27
  increment(value = 1) {
32
- // prom-client does not support bigints for values
33
- // https://github.com/siimon/prom-client/issues/259
34
- this.gauge.inc(Number(value));
28
+ this.gauge.inc(value);
35
29
  }
36
30
  decrement(value = 1) {
37
- // prom-client does not support bigints for values
38
- // https://github.com/siimon/prom-client/issues/259
39
- this.gauge.dec(Number(value));
31
+ this.gauge.dec(value);
40
32
  }
41
33
  reset() {
42
34
  this.gauge.reset();
@@ -1 +1 @@
1
- {"version":3,"file":"metric.js","sourceRoot":"","sources":["../../src/metric.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,gBAAgB;IAG3B,YAAa,IAAY,EAAE,IAA6B;QACtD,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,IAAI,OAAgD,CAAA;QAEpD,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;YAEhC,OAAO,GAAG,KAAK;gBACb,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAA;gBAE/B,kDAAkD;gBAClD,mDAAmD;gBACnD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACzB,CAAC,CAAA;SACF;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC;YACrB,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,MAAM;YAClB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAE,KAAsB;QAC5B,kDAAkD;QAClD,mDAAmD;QACnD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/B,CAAC;IAED,SAAS,CAAE,QAAyB,CAAC;QACnC,kDAAkD;QAClD,mDAAmD;QACnD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/B,CAAC;IAED,SAAS,CAAE,QAAyB,CAAC;QACnC,kDAAkD;QAClD,mDAAmD;QACnD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAA;IAChC,CAAC;CACF"}
1
+ {"version":3,"file":"metric.js","sourceRoot":"","sources":["../../src/metric.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,OAAO,gBAAgB;IAG3B,YAAa,IAAY,EAAE,IAA6B;QACtD,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,IAAI,OAAgD,CAAA;QAEpD,oBAAoB;QACpB,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;YAEhC,OAAO,GAAG,KAAK;gBACb,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAA;gBAE/B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC,CAAA;SACF;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC;YACrB,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,MAAM;YAClB,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAE,KAAa;QACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,CAAE,QAAgB,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,CAAE,QAAgB,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAA;IAChC,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/prometheus-metrics",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Collect libp2p metrics for scraping by Prometheus or Graphana",
5
5
  "author": "",
6
6
  "license": "Apache-2.0 OR MIT",
@@ -133,7 +133,7 @@
133
133
  },
134
134
  "dependencies": {
135
135
  "@libp2p/interface-connection": "^3.0.2",
136
- "@libp2p/interface-metrics": "^4.0.0",
136
+ "@libp2p/interface-metrics": "^4.0.2",
137
137
  "@libp2p/logger": "^2.0.2",
138
138
  "it-foreach": "^1.0.0",
139
139
  "it-stream-types": "^1.0.4"
@@ -6,7 +6,7 @@ export class PrometheusCounterGroup implements CounterGroup {
6
6
  private readonly counter: PromCounter
7
7
  private readonly label: string
8
8
 
9
- constructor (name: string, opts: CalculatedMetricOptions<Record<string, number | bigint>>) {
9
+ constructor (name: string, opts: CalculatedMetricOptions<Record<string, number>>) {
10
10
  name = normaliseString(name)
11
11
  const help = normaliseString(opts.help ?? name)
12
12
  const label = this.label = normaliseString(opts.label ?? name)
@@ -14,15 +14,13 @@ export class PrometheusCounterGroup implements CounterGroup {
14
14
 
15
15
  // calculated metric
16
16
  if (opts?.calculate != null) {
17
- const calculate: CalculateMetric<Record<string, number | bigint>> = opts.calculate
17
+ const calculate: CalculateMetric<Record<string, number>> = opts.calculate
18
18
 
19
19
  collect = async function () {
20
20
  const values = await calculate()
21
21
 
22
22
  Object.entries(values).forEach(([key, value]) => {
23
- // prom-client does not support bigints for values
24
- // https://github.com/siimon/prom-client/issues/259
25
- this.inc({ [label]: key }, Number(value))
23
+ this.inc({ [label]: key }, value)
26
24
  })
27
25
  }
28
26
  }
@@ -35,11 +33,9 @@ export class PrometheusCounterGroup implements CounterGroup {
35
33
  })
36
34
  }
37
35
 
38
- increment (values: Record<string, number | bigint | unknown>): void {
36
+ increment (values: Record<string, number | unknown>): void {
39
37
  Object.entries(values).forEach(([key, value]) => {
40
- // prom-client does not support bigints for values
41
- // https://github.com/siimon/prom-client/issues/259
42
- const inc = typeof value === 'number' || typeof value === 'bigint' ? Number(value) : 1
38
+ const inc = typeof value === 'number' ? value : 1
43
39
 
44
40
  this.counter.inc({ [this.label]: key }, inc)
45
41
  })
package/src/counter.ts CHANGED
@@ -18,7 +18,7 @@ export class PrometheusCounter implements Counter {
18
18
  collect = async function () {
19
19
  const value = await calculate()
20
20
 
21
- this.inc(Number(value))
21
+ this.inc(value)
22
22
  }
23
23
  }
24
24
 
@@ -30,10 +30,8 @@ export class PrometheusCounter implements Counter {
30
30
  })
31
31
  }
32
32
 
33
- increment (value: number | bigint = 1): void {
34
- // prom-client does not support bigints for values
35
- // https://github.com/siimon/prom-client/issues/259
36
- this.counter.inc(Number(value))
33
+ increment (value: number = 1): void {
34
+ this.counter.inc(value)
37
35
  }
38
36
 
39
37
  reset (): void {
@@ -6,7 +6,7 @@ export class PrometheusMetricGroup implements MetricGroup {
6
6
  private readonly gauge: Gauge
7
7
  private readonly label: string
8
8
 
9
- constructor (name: string, opts: CalculatedMetricOptions<Record<string, number | bigint>>) {
9
+ constructor (name: string, opts: CalculatedMetricOptions<Record<string, number>>) {
10
10
  name = normaliseString(name)
11
11
  const help = normaliseString(opts.help ?? name)
12
12
  const label = this.label = normaliseString(opts.label ?? name)
@@ -14,15 +14,13 @@ export class PrometheusMetricGroup implements MetricGroup {
14
14
 
15
15
  // calculated metric
16
16
  if (opts?.calculate != null) {
17
- const calculate: CalculateMetric<Record<string, number | bigint>> = opts.calculate
17
+ const calculate: CalculateMetric<Record<string, number>> = opts.calculate
18
18
 
19
19
  collect = async function () {
20
20
  const values = await calculate()
21
21
 
22
22
  Object.entries(values).forEach(([key, value]) => {
23
- // prom-client does not support bigints for values
24
- // https://github.com/siimon/prom-client/issues/259
25
- this.set({ [label]: key }, Number(value))
23
+ this.set({ [label]: key }, value)
26
24
  })
27
25
  }
28
26
  }
@@ -35,19 +33,15 @@ export class PrometheusMetricGroup implements MetricGroup {
35
33
  })
36
34
  }
37
35
 
38
- update (values: Record<string, number | bigint>): void {
36
+ update (values: Record<string, number>): void {
39
37
  Object.entries(values).forEach(([key, value]) => {
40
- // prom-client does not support bigints for values
41
- // https://github.com/siimon/prom-client/issues/259
42
- this.gauge.set({ [this.label]: key }, Number(value))
38
+ this.gauge.set({ [this.label]: key }, value)
43
39
  })
44
40
  }
45
41
 
46
- increment (values: Record<string, number | bigint | unknown>): void {
42
+ increment (values: Record<string, number | unknown>): void {
47
43
  Object.entries(values).forEach(([key, value]) => {
48
- // prom-client does not support bigints for values
49
- // https://github.com/siimon/prom-client/issues/259
50
- const inc = typeof value === 'number' || typeof value === 'bigint' ? Number(value) : 1
44
+ const inc = typeof value === 'number' ? value : 1
51
45
 
52
46
  this.gauge.inc({ [this.label]: key }, inc)
53
47
  })
@@ -55,9 +49,7 @@ export class PrometheusMetricGroup implements MetricGroup {
55
49
 
56
50
  decrement (values: Record<string, number | unknown>): void {
57
51
  Object.entries(values).forEach(([key, value]) => {
58
- // prom-client does not support bigints for values
59
- // https://github.com/siimon/prom-client/issues/259
60
- const dec = typeof value === 'number' || typeof value === 'bigint' ? Number(value) : 1
52
+ const dec = typeof value === 'number' ? value : 1
61
53
 
62
54
  this.gauge.dec({ [this.label]: key }, dec)
63
55
  })
package/src/metric.ts CHANGED
@@ -18,9 +18,7 @@ export class PrometheusMetric implements Metric {
18
18
  collect = async function () {
19
19
  const value = await calculate()
20
20
 
21
- // prom-client does not support bigints for values
22
- // https://github.com/siimon/prom-client/issues/259
23
- this.set(Number(value))
21
+ this.set(value)
24
22
  }
25
23
  }
26
24
 
@@ -32,22 +30,16 @@ export class PrometheusMetric implements Metric {
32
30
  })
33
31
  }
34
32
 
35
- update (value: number | bigint): void {
36
- // prom-client does not support bigints for values
37
- // https://github.com/siimon/prom-client/issues/259
38
- this.gauge.set(Number(value))
33
+ update (value: number): void {
34
+ this.gauge.set(value)
39
35
  }
40
36
 
41
- increment (value: number | bigint = 1): void {
42
- // prom-client does not support bigints for values
43
- // https://github.com/siimon/prom-client/issues/259
44
- this.gauge.inc(Number(value))
37
+ increment (value: number = 1): void {
38
+ this.gauge.inc(value)
45
39
  }
46
40
 
47
- decrement (value: number | bigint = 1): void {
48
- // prom-client does not support bigints for values
49
- // https://github.com/siimon/prom-client/issues/259
50
- this.gauge.dec(Number(value))
41
+ decrement (value: number = 1): void {
42
+ this.gauge.dec(value)
51
43
  }
52
44
 
53
45
  reset (): void {