mirror of
https://github.com/plashchynski/crono.git
synced 2026-03-30 14:22:07 +02:00
Save performing errors to DB
This commit is contained in:
@@ -75,7 +75,6 @@ module Crono
|
||||
end
|
||||
|
||||
def start_working_loop
|
||||
Thread.abort_on_exception = true
|
||||
while job = Crono.scheduler.next do
|
||||
sleep(job.next - Time.now)
|
||||
job.perform
|
||||
|
||||
@@ -34,10 +34,18 @@ module Crono
|
||||
def perform
|
||||
log "Perform #{performer}"
|
||||
self.last_performed_at = Time.now
|
||||
save
|
||||
|
||||
Thread.new do
|
||||
performer.new.perform
|
||||
log "Finished #{performer} in %.2f seconds" % (Time.now - last_performed_at)
|
||||
begin
|
||||
performer.new.perform
|
||||
rescue Exception => e
|
||||
log "Finished #{performer} in %.2f seconds with error: #{e.message}" % (Time.now - last_performed_at)
|
||||
log e.backtrace.join("\n")
|
||||
else
|
||||
log "Finished #{performer} in %.2f seconds" % (Time.now - last_performed_at)
|
||||
ensure
|
||||
save
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user