Class: LogStash::Outputs::SumoLogic::Statistics
- Inherits:
-
Object
- Object
- LogStash::Outputs::SumoLogic::Statistics
- Includes:
- Common
- Defined in:
- lib/logstash/outputs/sumologic/statistics.rb
Constant Summary
Constants included from Common
Common::CARBON2, Common::CATEGORY_HEADER, Common::CATEGORY_HEADER_DEFAULT, Common::CLIENT_HEADER, Common::CLIENT_HEADER_VALUE, Common::CONTENT_ENCODING, Common::CONTENT_TYPE, Common::CONTENT_TYPE_CARBON2, Common::CONTENT_TYPE_GRAPHITE, Common::CONTENT_TYPE_LOG, Common::DEFAULT_LOG_FORMAT, Common::DEFLATE, Common::GRAPHITE, Common::GZIP, Common::HOST_HEADER, Common::LOG_TO_CONSOLE, Common::METRICS_NAME_PLACEHOLDER, Common::NAME_HEADER, Common::NAME_HEADER_DEFAULT, Common::STATS_TAG, Common::STOP_TAG
Instance Attribute Summary collapse
-
#initialize_time ⇒ Object
readonly
Returns the value of attribute initialize_time.
-
#total_deque_bytes ⇒ Object
readonly
Returns the value of attribute total_deque_bytes.
-
#total_deque_times ⇒ Object
readonly
Returns the value of attribute total_deque_times.
-
#total_enque_bytes ⇒ Object
readonly
Returns the value of attribute total_enque_bytes.
-
#total_enque_times ⇒ Object
readonly
Returns the value of attribute total_enque_times.
-
#total_input_bytes ⇒ Object
readonly
Returns the value of attribute total_input_bytes.
-
#total_input_events ⇒ Object
readonly
Returns the value of attribute total_input_events.
-
#total_log_lines ⇒ Object
readonly
Returns the value of attribute total_log_lines.
-
#total_metrics_datapoints ⇒ Object
readonly
Returns the value of attribute total_metrics_datapoints.
-
#total_output_bytes ⇒ Object
readonly
Returns the value of attribute total_output_bytes.
-
#total_output_bytes_compressed ⇒ Object
readonly
Returns the value of attribute total_output_bytes_compressed.
-
#total_output_requests ⇒ Object
readonly
Returns the value of attribute total_output_requests.
-
#total_response(key) ⇒ Object
readonly
def initialize.
-
#total_response_success ⇒ Object
readonly
Returns the value of attribute total_response_success.
-
#total_response_times ⇒ Object
readonly
Returns the value of attribute total_response_times.
Instance Method Summary collapse
-
#atomic_map_increase(map, key) ⇒ Object
def record_response_failure.
-
#initialize ⇒ Statistics
constructor
A new instance of Statistics.
-
#record_deque(size) ⇒ Object
def record_enque.
-
#record_enque(size) ⇒ Object
def record_metrics_process.
- #record_input(size) ⇒ Object
-
#record_log_process ⇒ Object
def record_input.
-
#record_metrics_process(dps) ⇒ Object
def record_log_process.
-
#record_request(size, size_compressed) ⇒ Object
def record_deque.
-
#record_response_failure ⇒ Object
def record_response_success.
-
#record_response_success(code) ⇒ Object
def record_request.
Methods included from Common
#log_dbg, #log_err, #log_info, #log_warn, #set_logger
Constructor Details
#initialize ⇒ Statistics
Returns a new instance of Statistics.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# 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 |
Instance Attribute Details
#initialize_time ⇒ Object (readonly)
Returns the value of attribute initialize_time.
9 10 11 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 9 def initialize_time @initialize_time end |
#total_deque_bytes ⇒ Object (readonly)
Returns the value of attribute total_deque_bytes.
17 18 19 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 17 def total_deque_bytes @total_deque_bytes end |
#total_deque_times ⇒ Object (readonly)
Returns the value of attribute total_deque_times.
16 17 18 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 16 def total_deque_times @total_deque_times end |
#total_enque_bytes ⇒ Object (readonly)
Returns the value of attribute total_enque_bytes.
15 16 17 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 15 def total_enque_bytes @total_enque_bytes end |
#total_enque_times ⇒ Object (readonly)
Returns the value of attribute total_enque_times.
14 15 16 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 14 def total_enque_times @total_enque_times end |
#total_input_bytes ⇒ Object (readonly)
Returns the value of attribute total_input_bytes.
11 12 13 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 11 def total_input_bytes @total_input_bytes end |
#total_input_events ⇒ Object (readonly)
Returns the value of attribute total_input_events.
10 11 12 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 10 def total_input_events @total_input_events end |
#total_log_lines ⇒ Object (readonly)
Returns the value of attribute total_log_lines.
13 14 15 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 13 def total_log_lines @total_log_lines end |
#total_metrics_datapoints ⇒ Object (readonly)
Returns the value of attribute total_metrics_datapoints.
12 13 14 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 12 def total_metrics_datapoints @total_metrics_datapoints end |
#total_output_bytes ⇒ Object (readonly)
Returns the value of attribute total_output_bytes.
19 20 21 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 19 def total_output_bytes @total_output_bytes end |
#total_output_bytes_compressed ⇒ Object (readonly)
Returns the value of attribute total_output_bytes_compressed.
20 21 22 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 20 def total_output_bytes_compressed @total_output_bytes_compressed end |
#total_output_requests ⇒ Object (readonly)
Returns the value of attribute total_output_requests.
18 19 20 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 18 def total_output_requests @total_output_requests end |
#total_response(key) ⇒ Object (readonly)
def initialize
44 45 46 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 44 def total_response @total_response end |
#total_response_success ⇒ Object (readonly)
Returns the value of attribute total_response_success.
23 24 25 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 23 def total_response_success @total_response_success end |
#total_response_times ⇒ Object (readonly)
Returns the value of attribute total_response_times.
22 23 24 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 22 def total_response_times @total_response_times end |
Instance Method Details
#atomic_map_increase(map, key) ⇒ Object
def record_response_failure
87 88 89 90 91 92 93 94 95 96 97 |
# 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) ⇒ Object
def record_enque
66 67 68 69 |
# 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) ⇒ Object
def record_metrics_process
61 62 63 64 |
# 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) ⇒ Object
48 49 50 51 |
# 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 ⇒ Object
def record_input
53 54 55 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 53 def record_log_process() @total_log_lines.increment() end |
#record_metrics_process(dps) ⇒ Object
def record_log_process
57 58 59 |
# 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) ⇒ Object
def record_deque
71 72 73 74 75 |
# 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 ⇒ Object
def record_response_success
83 84 85 |
# File 'lib/logstash/outputs/sumologic/statistics.rb', line 83 def record_response_failure() atomic_map_increase(@total_response, "failure") end |
#record_response_success(code) ⇒ Object
def record_request
77 78 79 80 81 |
# 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 |