class LogStash::Outputs::SumoLogic::Statistics

Attributes

initialize_time[R]
total_deque_bytes[R]
total_deque_times[R]
total_enque_bytes[R]
total_enque_times[R]
total_input_bytes[R]
total_input_events[R]
total_log_lines[R]
total_metrics_datapoints[R]
total_output_bytes[R]
total_output_bytes_compressed[R]
total_output_requests[R]
total_response[R]
total_response_success[R]
total_response_times[R]

Public Class Methods

new() click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 25
def initialize()
  @initialize_time = Time.now()
  @total_input_events = Concurrent::AtomicFixnum.new
  @total_input_bytes = Concurrent::AtomicFixnum.new
  @total_metrics_datapoints = Concurrent::AtomicFixnum.new
  @total_log_lines = Concurrent::AtomicFixnum.new
  @total_enque_times = Concurrent::AtomicFixnum.new
  @total_enque_bytes = Concurrent::AtomicFixnum.new
  @total_deque_times = Concurrent::AtomicFixnum.new
  @total_deque_bytes = Concurrent::AtomicFixnum.new
  @total_output_requests = Concurrent::AtomicFixnum.new
  @total_output_bytes = Concurrent::AtomicFixnum.new
  @total_output_bytes_compressed = Concurrent::AtomicFixnum.new
  @total_response = Concurrent::Map.new
  @total_response_times = Concurrent::AtomicFixnum.new
  @total_response_success = Concurrent::AtomicFixnum.new
  
end

Public Instance Methods

atomic_map_increase(map, key) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 87
def atomic_map_increase(map, key)
  number = map.get(key)
  if number.nil?
    newNumber = Concurrent::AtomicFixnum.new
    number = map.put_if_absent(key, newNumber)
    if number.nil?
      number = newNumber
    end
  end
  number.increment()
end
record_deque(size) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 66
def record_deque(size)
  @total_deque_times.increment()
  @total_deque_bytes.update { |v| v + size }
end
record_enque(size) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 61
def record_enque(size)
  @total_enque_times.increment()
  @total_enque_bytes.update { |v| v + size }
end
record_input(size) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 48
def record_input(size)
  @total_input_events.increment()
  @total_input_bytes.update { |v| v + size }
end
record_log_process() click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 53
def record_log_process()
  @total_log_lines.increment()
end
record_metrics_process(dps) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 57
def record_metrics_process(dps)
  @total_metrics_datapoints.update { |v| v + dps }
end
record_request(size, size_compressed) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 71
def record_request(size, size_compressed)
  @total_output_requests.increment()
  @total_output_bytes.update { |v| v + size }
  @total_output_bytes_compressed.update { |v| v + size_compressed }
end
record_response_failure() click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 83
def record_response_failure()
  atomic_map_increase(@total_response, "failure")
end
record_response_success(code) click to toggle source
# File lib/logstash/outputs/sumologic/statistics.rb, line 77
def record_response_success(code)
  atomic_map_increase(@total_response, code.to_s)
  @total_response_success.increment() if code == 200
  @total_response_times.increment()
end