class NetuitiveRubyApi::DataCache
Public Class Methods
new()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 3 def initialize @sample_count_mutex = Mutex.new @event_count_mutex = Mutex.new reset_samples reset_events end
Public Instance Methods
add_aggregate_counter_metric(value)
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 39 def add_aggregate_counter_metric(value) @sample_count_mutex.synchronize do @aggregate_counter_metrics.push(value) sample_added end end
add_aggregate_metric(value)
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 32 def add_aggregate_metric(value) @sample_count_mutex.synchronize do @aggregate_metrics.push(value) sample_added end end
add_counter_sample(value)
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 25 def add_counter_sample(value) @sample_count_mutex.synchronize do @counter_samples.push(value) sample_added end end
add_event(value)
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 46 def add_event(value) @event_count_mutex.synchronize do @events.push(value) event_added end end
add_exception_event(value)
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 53 def add_exception_event(value) @event_count_mutex.synchronize do @exception_events.push(value) event_added end end
add_sample(value)
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 18 def add_sample(value) @sample_count_mutex.synchronize do @samples.push(value) sample_added end end
clear_event_cache()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 76 def clear_event_cache NetuitiveRubyApi::ErrorLogger.guard('error during clear_event_cache') do @event_count_mutex.synchronize do NetuitiveRubyApi::NetuitiveLogger.log.debug 'clearing event cache' ret = { events: @events.dup, exception_events: @exception_events.dup } reset_events ret end end end
clear_sample_cache()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 60 def clear_sample_cache NetuitiveRubyApi::ErrorLogger.guard('error during clear_sample_cache') do @sample_count_mutex.synchronize do NetuitiveRubyApi::NetuitiveLogger.log.debug 'clearing sample cache' ret = { samples: @samples.dup, counter_samples: @counter_samples.dup, aggregate_metrics: @aggregate_metrics.dup, aggregate_counter_metrics: @aggregate_counter_metrics.dup } reset_samples ret end end end
event_added()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 14 def event_added @event_count += 1 end
reset_events()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 98 def reset_events @events = [] @exception_events = [] @event_count = 0 end
reset_samples()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 90 def reset_samples @samples = [] @counter_samples = [] @aggregate_metrics = [] @aggregate_counter_metrics = [] @sample_count = 0 end
sample_added()
click to toggle source
# File lib/netuitive_ruby_api/data_cache.rb, line 10 def sample_added @sample_count += 1 end