Hi <%= @alert.contact_first_name %>

You have <%= @alert.rollup_alerts.length %> alerting check<%= @alert.rollup_alerts.length == 1 ? '' : 's' %> as follows:

<% @alert.rollup_alerts.sort_by {|entity_check, details| details['duration'] }.each do |rollup_alert| -%> <% r_entity, r_check = rollup_alert[0].split(':', 2) -%> <% state = rollup_alert[1]['state'] -%> <% duration = (ChronicDuration.output(rollup_alert[1]['duration'], :keep_zero => true) || '0 secs') -%> <% summary = rollup_alert[1]['summary'] -%> <% end %>
Check Entity State Duration Summary
<%= r_check %> <%= r_entity %> <%= ['ok'].include?(state) ? state.upcase : state.titleize %> <%= duration %> <%= summary %>
<% if @alert.rollup == 'recovery' %>

As your email summary threshold is <%= @alert.rollup_threshold %>, we're taking your email alerts out of summary mode now. You'll now be emailed individually for each alerting check.

<% else %>

Your email alerts are being summarised as your email summary threshold is set to <%= @alert.rollup_threshold %>. You'll receive summary emails like this one until your number of alerting checks falls below <%= @alert.rollup_threshold %>.

<% end %>

Cheers,
Flapjack