Add misfire grace time to scheduled tasks

This commit is contained in:
JonnyWong16 2021-01-09 14:15:32 -08:00
parent defceed696
commit 2fc7b08909
No known key found for this signature in database
GPG key ID: B1F1F9807184697A
3 changed files with 12 additions and 6 deletions

View file

@ -514,12 +514,16 @@ def schedule_job(func, name, hours=0, minutes=0, seconds=0, args=None):
SCHED.remove_job(name) SCHED.remove_job(name)
logger.info("Removed background task: %s", name) logger.info("Removed background task: %s", name)
elif job.trigger.interval != datetime.timedelta(hours=hours, minutes=minutes): elif job.trigger.interval != datetime.timedelta(hours=hours, minutes=minutes):
SCHED.reschedule_job(name, trigger=IntervalTrigger( SCHED.reschedule_job(
hours=hours, minutes=minutes, seconds=seconds, timezone=pytz.UTC), args=args) name, trigger=IntervalTrigger(
hours=hours, minutes=minutes, seconds=seconds, timezone=pytz.UTC),
args=args)
logger.info("Re-scheduled background task: %s", name) logger.info("Re-scheduled background task: %s", name)
elif hours > 0 or minutes > 0 or seconds > 0: elif hours > 0 or minutes > 0 or seconds > 0:
SCHED.add_job(func, id=name, trigger=IntervalTrigger( SCHED.add_job(
hours=hours, minutes=minutes, seconds=seconds, timezone=pytz.UTC), args=args) func, id=name, trigger=IntervalTrigger(
hours=hours, minutes=minutes, seconds=seconds, timezone=pytz.UTC),
args=args, misfire_grace_time=None)
logger.info("Scheduled background task: %s", name) logger.info("Scheduled background task: %s", name)

View file

@ -606,7 +606,8 @@ def schedule_callback(id, func=None, remove_job=False, args=None, **kwargs):
ACTIVITY_SCHED.add_job( ACTIVITY_SCHED.add_job(
func, args=args, id=id, trigger=DateTrigger( func, args=args, id=id, trigger=DateTrigger(
run_date=datetime.datetime.now(pytz.UTC) + datetime.timedelta(**kwargs), run_date=datetime.datetime.now(pytz.UTC) + datetime.timedelta(**kwargs),
timezone=pytz.UTC)) timezone=pytz.UTC),
misfire_grace_time=None)
def force_stop_stream(session_key, title, user): def force_stop_stream(session_key, title, user):

View file

@ -82,7 +82,8 @@ def schedule_newsletter_job(newsletter_job_id, name='', func=None, remove_job=Fa
logger.info("Tautulli NewsletterHandler :: Re-scheduled newsletter: %s" % name) logger.info("Tautulli NewsletterHandler :: Re-scheduled newsletter: %s" % name)
elif not remove_job: elif not remove_job:
NEWSLETTER_SCHED.add_job( NEWSLETTER_SCHED.add_job(
func, args=args, id=newsletter_job_id, trigger=CronTrigger.from_crontab(cron)) func, args=args, id=newsletter_job_id, trigger=CronTrigger.from_crontab(cron),
misfire_grace_time=None)
logger.info("Tautulli NewsletterHandler :: Scheduled newsletter: %s" % name) logger.info("Tautulli NewsletterHandler :: Scheduled newsletter: %s" % name)