diff --git a/app/services/check_processor.rb b/app/services/check_processor.rb index cb857bc..f64cad3 100644 --- a/app/services/check_processor.rb +++ b/app/services/check_processor.rb @@ -29,10 +29,15 @@ module CheckProcessor end group_finished_at = Time.now + check_ids = checks.map(&:id) + check_logs = check_errors_scope(check_ids: check_ids, + after_date: group_started_at, + before_date: group_finished_at).includes(:check).all - check_errors_scope(check_ids: checks.map(&:id), - after_date: group_started_at, - before_date: group_finished_at).includes(:check).each do |check_log| + message = "#{self.class.name}: #{check_logs.count} error(s) found for checks '#{check_ids.join(',')}' between '#{group_started_at}' and '#{group_finished_at}'" # rubocop:disable Metrics/LineLength + logger.debug(message) + + check_logs.each do |check_log| message = "#{self.class.name}: check ##{check_log.check_id} for '#{check_log.check.domain}' failed (#{check_log.exit_status}) ; #{check_log.error.lines.first}" # rubocop:disable Metrics/LineLength logger.error(message) end diff --git a/config/schedule.rb b/config/schedule.rb index 3d8193d..179cbaf 100644 --- a/config/schedule.rb +++ b/config/schedule.rb @@ -5,7 +5,8 @@ set :output, standard: "log/cron.log" -# +job_type :rake_with_stdout, "cd :path && :environment_variable=:environment bundle exec rake :task" + # every 2.hours do # command "/usr/bin/some_great_command" # runner "MyModel.some_method" @@ -19,7 +20,7 @@ set :output, standard: "log/cron.log" # Learn more: http://github.com/javan/whenever every 1.day, at: '1:00 am', roles: [:app] do - rake "checks:sync_dates:all" + rake_with_stdout "checks:sync_dates:all VERBOSE=1" end every 1.day, at: '8:30 am', roles: [:app] do