class Supervision::CircuitMonitor

A class responsible for recording circuit performance

Attributes

last_opened[R]

Timestamp for the last circuit open state

@api public

times_opened[R]

Public Class Methods

new() click to toggle source
# File lib/supervision/circuit_monitor.rb, line 14
def initialize
  @total_failed_calls  = Counter.new
  @total_success_calls = Counter.new
  @total_calls         = Counter.new
  @state_transitions   = Counter.new
end

Public Instance Methods

measure(type) click to toggle source
# File lib/supervision/circuit_monitor.rb, line 43
def measure(type)

end
record_failure() click to toggle source
# File lib/supervision/circuit_monitor.rb, line 38
def record_failure
  @total_failed_calls.increment
  @total_calls.increment
end
record_success() click to toggle source
# File lib/supervision/circuit_monitor.rb, line 33
def record_success
  @total_success_calls.increment
  @total_calls.increment
end
reset() click to toggle source

Reset the circuit statistics

@return [nil]

@api public

# File lib/supervision/circuit_monitor.rb, line 52
def reset
  total_calls.clear
  total_success_calls.clear
  total_failed_calls.clear
end
total_calls() click to toggle source
# File lib/supervision/circuit_monitor.rb, line 21
def total_calls
  @total_calls.value
end
total_failed_calls() click to toggle source
# File lib/supervision/circuit_monitor.rb, line 29
def total_failed_calls
  @total_failed_calls.value
end
total_success_calls() click to toggle source
# File lib/supervision/circuit_monitor.rb, line 25
def total_success_calls
  @total_success_calls.value
end