Class: Fluent::PrometheusOutput

Inherits:
Output
  • Object
show all
Includes:
Prometheus
Defined in:
lib/fluent/plugin/out_prometheus.rb

Instance Method Summary collapse

Methods included from Prometheus

#instrument, parse_labels_elements, parse_metrics_elements, placeholder_expander

Constructor Details

#initializePrometheusOutput

Returns a new instance of PrometheusOutput.



9
10
11
12
# File 'lib/fluent/plugin/out_prometheus.rb', line 9

def initialize
  super
  @registry = ::Prometheus::Client.registry
end

Instance Method Details

#configure(conf) ⇒ Object



14
15
16
17
18
# File 'lib/fluent/plugin/out_prometheus.rb', line 14

def configure(conf)
  super
  labels = Fluent::Prometheus.parse_labels_elements(conf)
  @metrics = Fluent::Prometheus.parse_metrics_elements(conf, @registry, labels)
end

#emit(tag, es, chain) ⇒ Object



20
21
22
23
# File 'lib/fluent/plugin/out_prometheus.rb', line 20

def emit(tag, es, chain)
  instrument(tag, es, @metrics)
  chain.next
end