Python模块之apscheduler

◆ 参考资料:
https://blog.csdn.net/somezz/article/details/83104368
◆ 只在首次执行任务异常:

正常运行完,下次的任务执行时间日志:

144 - 2018-11-23 01:12:10,230 - INFO - Job "SubmitData (trigger: interval[1 day, 0:00:00], next run at: 2018-11-24 01:00:00 CST)" executed successfully

没有执行任务的日志:

2018-11-22 00:00:04,084 base.py[line:120] run_job WARNING Run time of job "start (trigger: interval[1 day, 0:00:00], next run at: 2018-11-23 00:00:01 CST)" was missed by 0:00:03.061840

根据日志信息,报错原因为:

距离下次运行时间,错过了3秒,所有第二次就没有执行任务。

解决方法:

在add_job()中添加参数:

scheduler.add_job(start, 'interval', days=1, coalesce=True, misfire_grace_time=3600, start_date='2018-11-23 00:00:01', end_date='2019-12-30 11:59:59')

参数:

  • misfire_grace_time: 允许容错的时间,单位为:s(解决这个was missed by 这个报错)
  • coalesce:如果系统因某些原因没有执行任务,导致任务累计,为True则只运行最后一次,为False 则累计的任务全部跑一遍
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章