cloudflared/vendor/github.com/prometheus/client_model/ruby
2018-07-19 15:02:24 -05:00
..
lib/prometheus/client TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
.gitignore TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
Gemfile TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
LICENSE TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
Makefile TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
prometheus-client-model.gemspec TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
Rakefile TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00
README.md TUN-528: Move cloudflared into a separate repo 2018-07-19 15:02:24 -05:00

Prometheus Ruby client model

Data model artifacts for the Prometheus Ruby client.

Installation

gem install prometheus-client-model

Usage

Build the artifacts from the protobuf specification:

make build

While this Gem's main purpose is to define the Prometheus data types for the client, it's possible to use it without the client to decode a stream of delimited protobuf messages:

require 'open-uri'
require 'prometheus/client/model'

CONTENT_TYPE = 'application/vnd.google.protobuf; proto=io.prometheus.client.MetricFamily; encoding=delimited'

stream = open('http://localhost:9090/metrics', 'Accept' => CONTENT_TYPE).read
while family = Prometheus::Client::MetricFamily.read_delimited(stream)
  puts family
end