Class: Fluent::Plugin::Prometheus::Counter
- Defined in:
- lib/fluent/plugin/prometheus.rb
Instance Attribute Summary
Attributes inherited from Metric
Instance Method Summary collapse
-
#initialize(element, registry, labels) ⇒ Counter
constructor
A new instance of Counter.
- #instrument(record, expander, placeholders) ⇒ Object
Methods inherited from Metric
Constructor Details
#initialize(element, registry, labels) ⇒ Counter
Returns a new instance of Counter.
146 147 148 149 150 151 152 153 |
# File 'lib/fluent/plugin/prometheus.rb', line 146 def initialize(element, registry, labels) super begin @counter = registry.counter(element['name'].to_sym, element['desc']) rescue ::Prometheus::Client::Registry::AlreadyRegisteredError @counter = Fluent::Plugin::Prometheus::Metric.get(registry, element['name'].to_sym, :counter, element['desc']) end end |
Instance Method Details
#instrument(record, expander, placeholders) ⇒ Object
155 156 157 158 159 160 161 162 163 |
# File 'lib/fluent/plugin/prometheus.rb', line 155 def instrument(record, , placeholders) # use record value of the key if key is specified, otherwise just increment value = @key ? record[@key] : 1 # ignore if record value is nil return if value.nil? @counter.increment(labels(record, , placeholders), value) end |