class Fluent::Plugin::LocalMetrics
Public Class Methods
new()
click to toggle source
Calls superclass method
Fluent::Plugin::Metrics::new
# File lib/fluent/plugin/metrics_local.rb, line 25 def initialize super @store = 0 @monitor = Monitor.new end
Public Instance Methods
add(value)
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 69 def add(value) @monitor.synchronize do @store += value end end
configure(conf)
click to toggle source
Calls superclass method
Fluent::Plugin::Metrics#configure
# File lib/fluent/plugin/metrics_local.rb, line 31 def configure(conf) super if use_gauge_metric class << self alias_method :dec, :dec_gauge alias_method :set, :set_gauge alias_method :sub, :sub_gauge end else class << self alias_method :set, :set_counter end end end
dec_gauge()
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 63 def dec_gauge @monitor.synchronize do @store -= 1 end end
get()
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 51 def get @monitor.synchronize do @store end end
inc()
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 57 def inc @monitor.synchronize do @store += 1 end end
multi_workers_ready?()
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 47 def multi_workers_ready? true end
set_counter(value)
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 81 def set_counter(value) return if @store > value @monitor.synchronize do @store = value end end
set_gauge(value)
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 89 def set_gauge(value) @monitor.synchronize do @store = value end end
sub_gauge(value)
click to toggle source
# File lib/fluent/plugin/metrics_local.rb, line 75 def sub_gauge(value) @monitor.synchronize do @store -= value end end