class SnowmanIO::Loop::ChecksPerform
Public Class Methods
perform()
click to toggle source
# File lib/snowman-io/loop/checks_perform.rb, line 6 def self.perform Check.each do |check| result = CheckProcessor.new(check).process send_mail = false check.last_run_at = DateTime.now if result puts "Check for #{check.metric.name} triggered" unless check.triggered send_mail = true end check.triggered = true check.last_status = Check::STATUS_FAILED else check.last_status = Check::STATUS_OK end check.save! if send_mail SnowMailer.check_triggered( check, check.last_run_at, Setting.get(SnowmanIO::BASE_URL_KEY), check.user.email, true ).deliver_now check.user.followers.each do |user| SnowMailer.check_triggered( check, check.last_run_at, Setting.get(SnowmanIO::BASE_URL_KEY), user.email, false ).deliver_now end end end end