diff options
author | Alex Grönholm <alex.gronholm@nextday.fi> | 2017-12-09 19:27:49 +0200 |
---|---|---|
committer | Alex Grönholm <alex.gronholm@nextday.fi> | 2017-12-09 19:30:47 +0200 |
commit | 7794f56fe10a40664f8ac9efba839c4fff797e6d (patch) | |
tree | f4f92d4f01e85426b3d6020383104934957abddc /apscheduler | |
parent | 0a85a0a1375271929d6f708ae74fab59a4b5c04a (diff) | |
download | apscheduler-7794f56fe10a40664f8ac9efba839c4fff797e6d.tar.gz |
Fixed traceback or its frames not being available for logger.exception()
Diffstat (limited to 'apscheduler')
-rw-r--r-- | apscheduler/executors/base.py | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/apscheduler/executors/base.py b/apscheduler/executors/base.py index 6ed1ec3..4c09fc1 100644 --- a/apscheduler/executors/base.py +++ b/apscheduler/executors/base.py @@ -126,6 +126,9 @@ def run_job(job, jobstore_alias, run_times, logger_name): except BaseException: exc, tb = sys.exc_info()[1:] formatted_tb = ''.join(format_tb(tb)) + events.append(JobExecutionEvent(EVENT_JOB_ERROR, job.id, jobstore_alias, run_time, + exception=exc, traceback=formatted_tb)) + logger.exception('Job "%s" raised an exception', job) # This is to prevent cyclic references that would lead to memory leaks if six.PY2: @@ -135,10 +138,6 @@ def run_job(job, jobstore_alias, run_times, logger_name): import traceback traceback.clear_frames(tb) del tb - - events.append(JobExecutionEvent(EVENT_JOB_ERROR, job.id, jobstore_alias, run_time, - exception=exc, traceback=formatted_tb)) - logger.exception('Job "%s" raised an exception', job) else: events.append(JobExecutionEvent(EVENT_JOB_EXECUTED, job.id, jobstore_alias, run_time, retval=retval)) |