Search code examples
python-3.xapscheduler

how to fetch missed jobs from scheduler


I am using BackgroundScheduler scheduler to schedule my jobs.

from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore

jobstores = {'default': SQLAlchemyJobStore(engine=my_db_engine)}
scheduler = BackgroundScheduler(jobstores=jobstores)

job = scheduler.add_job(my_job, run_date=some_future_time, misfire_grace_time=60)

I want to fetch missed jobs for scheduler which passed misfire_grace_time. The scheduler.get_jobs() will give only future jobs.


Solution

  • Not sure what you're really after, but you can add a listener for missed jobs:

    def listener(event):
        ...
    
    scheduler.add_listener(listener, EVENT_JOB_MISSED)
    

    Some documentation here.