class Evil::Metrics::Prometheus::Adapter
Public Instance Methods
build_name(metric)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 44 def build_name(metric) [metric.group, metric.name, metric.unit].compact.join("_").to_sym end
perform_counter_increment!(*)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 21 def perform_counter_increment!(*) # Do nothing. Prometheus will read current value from evil metric end
perform_gauge_set!(*)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 30 def perform_gauge_set!(*) # Do nothing. Prometheus will read current value from evil metric end
perform_histogram_measure!(metric, tags, value)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 40 def perform_histogram_measure!(metric, tags, value) registry.get(build_name(metric)).observe(tags, value) end
register_counter!(metric)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 16 def register_counter!(metric) validate_metric!(metric) registry.register(Prometheus::CounterWrapper.new(metric)) end
register_gauge!(metric)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 25 def register_gauge!(metric) validate_metric!(metric) registry.register(Prometheus::GaugeWrapper.new(metric)) end
register_histogram!(metric)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 34 def register_histogram!(metric) validate_metric!(metric) buckets = metric.buckets || ::Prometheus::Client::Histogram::DEFAULT_BUCKETS registry.histogram(build_name(metric), metric.comment, {}, buckets) end
registry()
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 12 def registry @registry ||= ::Prometheus::Client.registry end
validate_metric!(metric)
click to toggle source
# File lib/evil/metrics/prometheus/adapter.rb, line 48 def validate_metric!(metric) return if metric.comment raise ArgumentError, "Prometheus require metrics to have comments" end