X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FBackgroundJob.pm;h=743a6b5eac5dd55f4f9724abbeecd03d5be0845e;hb=e36cc2a647f25b9b8f1b9b8965f9fdef09a5cd8b;hp=b9e00c4d3ec860d6a97069166bdecb72fe774de1;hpb=ee71ba3372b47b7de1e30d56db92c1315ae1e104;p=kivitendo-erp.git diff --git a/SL/DB/BackgroundJob.pm b/SL/DB/BackgroundJob.pm index b9e00c4d3..743a6b5ea 100644 --- a/SL/DB/BackgroundJob.pm +++ b/SL/DB/BackgroundJob.pm @@ -27,7 +27,7 @@ sub run { my $run_at = DateTime->now_local; my $history; - eval { + my $ok = eval { my $result = $package->new->run($self); $history = SL::DB::BackgroundJobHistory @@ -41,14 +41,17 @@ sub run { 1; }; - if ($EVAL_ERROR) { + if (!$ok) { + my $error = $EVAL_ERROR; $history = SL::DB::BackgroundJobHistory ->new(package_name => $self->package_name, run_at => $run_at, status => 'failure', - error => $EVAL_ERROR, + error_col => $error, data => $self->data); $history->save; + + $::lxdebug->message(LXDebug->WARN(), "BackgroundJob ID " . $self->id . " execution error (first three lines): " . join("\n", (split(m/\n/, $error))[0..2])); } $self->assign_attributes(last_run_at => $run_at)->update_next_run_at;