add hourly check for delayed job errors

This commit is contained in:
Albert Yi
2018-05-09 17:33:02 -07:00
parent bc4010fe6c
commit 0d7aa921d6
2 changed files with 24 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
#!/usr/bin/env ruby
require 'mail'
class DelayedJobErrorChecker
def check!
errors = Delayed::Job.where("last_error is not null").limit(100).pluck(:last_error).map {|x| x[0..100]}
if errors.size == 100
mail = Mail.new do
from "webmaster@danbooru.donmai.us"
to "r888888888@gmail.com"
subject "[danbooru] Delayed job error count at #{errors}"
body errors.uniq.join("\n")
end
mail.delivery_method :sendmail
mail.deliver
end
end
end

View File

@@ -5,6 +5,10 @@ every 1.hour do
runner "UploadErrorChecker.new.check!"
end
every 1.hour do
runner "DelayedJobErrorChecker.new.check!"
end
every 1.day do
runner "DailyMaintenance.new.run"
end