Skip to content

thegu5/neoprom

Repository files navigation

@gu5/neoprom

neoprom is a modern TypeScript-first client library for Prometheus, inspired by prom-client.

(heavy work-in-progress!)

Comparison

prom-client @gu5/neoprom
Fully tested
TypeScript-first1
Decorators/Wrappers2
Standard runtime metrics
Worker/Cluster Support
Push Gateway
Exemplars
Metric Types
Counter
Gauge
Histogram
Summary
Info
StateSet
GaugeHistogram

Todos / Ideas

  • Docs
    • Add TSDoc comments for everything
    • Standalone documentation site with more details (?)
  • Integration testing with NixOS
  • Metric aggregation
    • sum, average etc like how prom-client does it
    • 'preserve' format that outputs multiple observations per metric (OpenMetrics-only)
  • See comparison chart above
  • Compare naming and data model to prometheus docs, consider aliases, etc
  • ...

Footnotes

  1. The entire library is written in TypeScript. Effort has been put in to make the types as accurate and strict as possible.

  2. This refers to the time and trackInProgress methods. They can be used both to wrap functions, as well as ES7 class method decorators. See their docs for more.

About

A modern TypeScript-first client library for Prometheus

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors