class ApiBomb::Signaler
Attributes
hold_times[R]
statuses[R]
Public Class Methods
new()
click to toggle source
# File lib/api_bomb/signaler.rb, line 4 def initialize @statuses = [] @hold_times = [] end
Public Instance Methods
fighters_lost()
click to toggle source
# File lib/api_bomb/signaler.rb, line 14 def fighters_lost hold_times.count end
mean_hold_time()
click to toggle source
# File lib/api_bomb/signaler.rb, line 18 def mean_hold_time hold_times.mean end
percentile(value)
click to toggle source
# File lib/api_bomb/signaler.rb, line 26 def percentile(value) hold_times.percentile(value) end
report(fighter)
click to toggle source
# File lib/api_bomb/signaler.rb, line 9 def report(fighter) @statuses << fighter.value.response.status @hold_times << fighter.value.hold_time end
sd_time()
click to toggle source
# File lib/api_bomb/signaler.rb, line 22 def sd_time hold_times.standard_deviation end
server_errors()
click to toggle source
# File lib/api_bomb/signaler.rb, line 30 def server_errors @statuses.select{|s| s >= 500}.count end
server_status_stats()
click to toggle source
# File lib/api_bomb/signaler.rb, line 34 def server_status_stats @server_status_stats ||= @statuses.group_by{|status| status.to_i.to_s.chop.chop.insert(-1, 'xx') }.map{|s| {s.first => s.last.count}} end