Awesome
TelemetryMetricsPrometheus.Core
TelemetryMetricsPrometheus.Core is a Telemetry.Metrics Reporter for aggregating and exposing Prometheus metrics based on Telemetry.Metrics
definitions. This package does not provide a built-in web server. TelemetryMetricsPrometheus provides a server out of the box exposing a /metrics
endpoint, making setup a breeze.
Web Server
This library is the core for the TelemetryMetricsPrometheus project. The TelemetryMetricsPrometheus
library is a standalone implementation leveraging TelemetryMetricsPrometheus.Core
which ships with its own web server. Using TelemetryMetricsPrometheus
allows a quick way to get started with a Cowboy web server that runs along side your application. TelemetryMetricsPrometheus.Core
should be used if your use case is outside the scope of the TelemetryMetricsPrometheus
web server.
Is this the right Prometheus package for me?
If you want to take advantage of consuming :telemetry
events with the ease of
defining and managing metrics Telemetry.Metrics
brings for Prometheus, then yes!
This package provides a simple and straightforward way to aggregate and report
Prometheus metrics. Whether you're using Prometheus servers, Datadog,
or any other monitoring solution which supports scraping, you're in luck!
If you're not interested in taking advantage of Telemetry.Metrics
but still
want to implement Prometheus or use :telemetry
in your project, have a look at
something like the OpenCensus project and
see if it better meets your needs.
Installation
The package can be installed by adding telemetry_metrics_prometheus_core
to your
list of dependencies in mix.exs
:
def deps do
[
{:telemetry_metrics_prometheus_core, "~> 1.1"}
]
end
See the documentation on Hexdocs for more information.
Contributing
Contributors are highly welcome!
Additional documentation, tests, and benchmarking are all welcome.
Please open an issue for discussion before undertaking anything non-trivial before jumping in and submitting a PR.