All Projects → opencensus-beam → opencensus-prometheus

opencensus-beam / opencensus-prometheus

Licence: MIT license
Export opencensus span metrics and statistics to Prometheus

Programming Languages

erlang
1774 projects
elixir
2628 projects
shell
77523 projects
emacs lisp
2029 projects

Projects that are alternatives of or similar to opencensus-prometheus

opencensus elixir
No description or website provided.
Stars: ✭ 38 (+111.11%)
Mutual labels:  opencensus
opencensus-go-exporter-stackdriver
OpenCensus Go exporter for Stackdriver Monitoring and Trace
Stars: ✭ 65 (+261.11%)
Mutual labels:  opencensus
opencensus absinthe
Opencensus integration with Absinthe
Stars: ✭ 21 (+16.67%)
Mutual labels:  opencensus
Opencensus Go
A stats collection and distributed tracing framework
Stars: ✭ 1,895 (+10427.78%)
Mutual labels:  opencensus
Microservices Demo
Sample cloud-native application with 10 microservices showcasing Kubernetes, Istio, gRPC and OpenCensus.
Stars: ✭ 11,369 (+63061.11%)
Mutual labels:  opencensus
opencensus telemetry
Opencensus integration with Telemetry library
Stars: ✭ 18 (+0%)
Mutual labels:  opencensus
gateway
A proxy to buffer and forward metrics, events, and traces.
Stars: ✭ 94 (+422.22%)
Mutual labels:  opencensus

Opencensus Prometheus integration for Erlang/BEAM

Copyright (c) 2018 Ilya Khaprov <[email protected]>.

Version: 0.3.1

Hex.pm Hex.pm Downloads Build Status Coverage Status

Opencensus: Erlang stats collection and distributed tracing framework.

Prometheus.io: monitoring system and time series database client in Erlang.

Using

Opencensus has trace and stats packages, trace package if for distributed tracing and stats package is for backend-agnostic metrics collection.

This library implements a trace reporter for exporting spans duration as prometheus metrics and a stats exporter for exporting metrics collected using Opencensus.

Example configuration:

{opencensus, [
        {reporter, {oc_reporter_sequential, [
          {oc_reporter_zipkin, [
            {url, "http://localhost:9411"},
            {service_name, "service_name"}
          ]},
          {oc_prometheus_reporter, [{type, histogram}, %% metric type
                                    {name, span_histogram_seconds}, %% metric name, note the time unit
                                    {buckets, [0, 1, 2]}]} %% histogram buckets with bounds in the time unit
        ]}},
        {sampler, {oc_sampler_probability, [
            {probability, 0.001} %% one in a thousand
        ]}}
    ]}

Since Prometheus uses push model you don't need to set up Opencensus stats exporter as usual. Instead, this library provides oc_stat_exporter_prometheus which implements Prometheus collector interface.

  prometheus_registry:register_collector(oc_stat_exporter_prometheus)

Other Prometheus and Opencensus Links

Opencensus

Prometheus

Contributing

Section order:

  • Types
  • Macros
  • Callbacks
  • Public API
  • Deprecations
  • Private Parts

Install the git pre-commit hook:

./bin/pre-commit.sh install

The pre-commit check can be skipped by passing --no-verify to git commit.

License

MIT

Modules

oc_reporter_prometheus
oc_stat_exporter_prometheus
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].