Class: Supervision::CircuitMonitor
- Inherits:
-
Object
- Object
- Supervision::CircuitMonitor
- Defined in:
- lib/supervision/circuit_monitor.rb
Overview
A class responsible for recording circuit performance
Instance Attribute Summary collapse
-
#last_opened ⇒ Object
readonly
Timestamp for the last circuit open state.
-
#times_opened ⇒ Object
readonly
Returns the value of attribute times_opened.
Instance Method Summary collapse
-
#initialize ⇒ CircuitMonitor
constructor
A new instance of CircuitMonitor.
- #measure(type) ⇒ Object
- #record_failure ⇒ Object
- #record_success ⇒ Object
-
#reset ⇒ nil
Reset the circuit statistics.
- #total_calls ⇒ Object
- #total_failed_calls ⇒ Object
- #total_success_calls ⇒ Object
Constructor Details
Instance Attribute Details
#last_opened ⇒ Object (readonly)
Timestamp for the last circuit open state
12 13 14 |
# File 'lib/supervision/circuit_monitor.rb', line 12 def last_opened @last_opened end |
#times_opened ⇒ Object (readonly)
Returns the value of attribute times_opened.
7 8 9 |
# File 'lib/supervision/circuit_monitor.rb', line 7 def times_opened @times_opened end |
Instance Method Details
#measure(type) ⇒ Object
43 44 45 |
# File 'lib/supervision/circuit_monitor.rb', line 43 def measure(type) end |
#record_failure ⇒ Object
38 39 40 41 |
# File 'lib/supervision/circuit_monitor.rb', line 38 def record_failure @total_failed_calls.increment @total_calls.increment end |
#record_success ⇒ Object
33 34 35 36 |
# File 'lib/supervision/circuit_monitor.rb', line 33 def record_success @total_success_calls.increment @total_calls.increment end |
#reset ⇒ nil
Reset the circuit statistics
52 53 54 55 56 |
# File 'lib/supervision/circuit_monitor.rb', line 52 def reset total_calls.clear total_success_calls.clear total_failed_calls.clear end |
#total_calls ⇒ Object
21 22 23 |
# File 'lib/supervision/circuit_monitor.rb', line 21 def total_calls @total_calls.value end |
#total_failed_calls ⇒ Object
29 30 31 |
# File 'lib/supervision/circuit_monitor.rb', line 29 def total_failed_calls @total_failed_calls.value end |
#total_success_calls ⇒ Object
25 26 27 |
# File 'lib/supervision/circuit_monitor.rb', line 25 def total_success_calls @total_success_calls.value end |