Method: ElbPing::Display.summary
- Defined in:
- lib/elbping/display.rb
.summary(stats) ⇒ Object
Display summary of requests, responses, and latencies (for aggregate and per-node)
Arguments:
-
stats: (ElbPing::Stats)
65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/elbping/display.rb', line 65 def self.summary(stats) pinged_nodes = stats.nodes.keys.select { |n| stats.nodes[n][:requests] > 0 } pinged_nodes.each { |node| loss_pct = (stats.node_loss(node) * 100).to_i self.out "--- #{node} statistics ---" self.out "#{stats.nodes[node][:requests]} requests, #{stats.nodes[node][:responses]} responses, #{loss_pct}% loss" self.out "min/avg/max = #{stats.nodes[node][:latencies].min}/#{stats.nodes[node][:latencies].mean}/#{stats.nodes[node][:latencies].max} ms" } loss_pct = (stats.total_loss * 100).to_i self.out '--- total statistics ---' self.out "#{stats.total[:requests]} requests, #{stats.total[:responses]} responses, #{loss_pct}% loss, #{stats.nodes.size} nodes" self.out "min/avg/max = #{stats.total[:latencies].min}/#{stats.total[:latencies].mean}/#{stats.total[:latencies].max} ms" end |