class NetuitiveRubyAPI
Attributes
data_manager[RW]
netuitivedServer[RW]
pid[R]
Public Class Methods
add_counter_sample(metric_id, val)
click to toggle source
# File lib/netuitive_ruby_api.rb, line 67 def add_counter_sample(metric_id, val) @data_manager.add_counter_sample(metric_id, val) end
add_sample(metric_id, val)
click to toggle source
# File lib/netuitive_ruby_api.rb, line 63 def add_sample(metric_id, val) @data_manager.add_sample(metric_id, val) end
aggregate_counter_metric(metric_id, val)
click to toggle source
# File lib/netuitive_ruby_api.rb, line 75 def aggregate_counter_metric(metric_id, val) @data_manager.aggregate_counter_metric(metric_id, val) end
aggregate_metric(metric_id, val)
click to toggle source
# File lib/netuitive_ruby_api.rb, line 71 def aggregate_metric(metric_id, val) @data_manager.aggregate_metric(metric_id, val) end
check_restart()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 49 def check_restart NetuitiveRubyApi::NetuitiveLogger.log.debug "stored pid: #{@pid}, process pid: #{Process.pid}" return if @pid == Process.pid Thread.new { NetuitiveRubyAPI.setup } end
clear_metrics()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 79 def clear_metrics netuitivedServer.clearMetrics end
event(message, timestamp = Time.new, title = 'Ruby Event', level = 'Info', source = 'Ruby Agent', type = 'INFO', tags = nil)
click to toggle source
# File lib/netuitive_ruby_api.rb, line 87 def event(message, timestamp = Time.new, title = 'Ruby Event', level = 'Info', source = 'Ruby Agent', type = 'INFO', tags = nil) @data_manager.event(message, timestamp, title, level, source, type, tags) end
exception_event(exception, klass = nil, tags = nil)
click to toggle source
# File lib/netuitive_ruby_api.rb, line 91 def exception_event(exception, klass = nil, tags = nil) @data_manager.exception_event(exception, klass, tags) end
flush_events()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 55 def flush_events @data_manager.flush_events end
flush_samples()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 45 def flush_samples @data_manager.flush_samples end
interval()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 83 def interval netuitivedServer.interval # synchronous for return value end
send_metrics()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 59 def send_metrics netuitivedServer.sendMetrics end
setup()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 17 def setup @pid = Process.pid NetuitiveRubyApi::ConfigManager.load_config NetuitiveRubyApi::NetuitiveLogger.setup NetuitiveRubyApi::ConfigManager.read_config NetuitiveRubyApi::ErrorLogger.guard('error during api setup') do server_uri = "druby://#{NetuitiveRubyApi::ConfigManager.netuitivedAddr}:#{NetuitiveRubyApi::ConfigManager.netuitivedPort}".freeze DRb.start_service drb_server = DRbObject.new_with_uri(server_uri) data_manager = NetuitiveRubyApi::DataManager.new data_manager.data_cache = NetuitiveRubyApi::DataCache.new data_manager.sample_cache_enabled = NetuitiveRubyApi::ConfigManager.sample_cache_enabled data_manager.sample_cache_size = NetuitiveRubyApi::ConfigManager.sample_cache_size data_manager.sample_cache_interval = NetuitiveRubyApi::ConfigManager.sample_cache_interval data_manager.event_cache_enabled = NetuitiveRubyApi::ConfigManager.event_cache_enabled data_manager.event_cache_size = NetuitiveRubyApi::ConfigManager.event_cache_size data_manager.event_cache_interval = NetuitiveRubyApi::ConfigManager.event_cache_interval data_manager.netuitived_server = drb_server @netuitivedServer = drb_server @data_manager = data_manager NetuitiveRubyApi::SampleSchedule.stop NetuitiveRubyApi::EventSchedule.stop NetuitiveRubyApi::SampleSchedule.start(NetuitiveRubyApi::ConfigManager.sample_cache_interval) if NetuitiveRubyApi::ConfigManager.sample_cache_enabled NetuitiveRubyApi::EventSchedule.start(NetuitiveRubyApi::ConfigManager.event_cache_interval) if NetuitiveRubyApi::ConfigManager.event_cache_enabled NetuitiveRubyApi::NetuitiveLogger.log.info 'netuitive_ruby_api finished setup' end end
stop_server()
click to toggle source
# File lib/netuitive_ruby_api.rb, line 95 def stop_server netuitivedServer.stopServer end