all working and task are running fine.
but i cant get the jobs printed or viewed in views.py even if i imported the variable or schedulor. it returns [ ].
i have given a sample code which im using, please do change according to your environment.
import logging
from django.conf import settings
from apscheduler.schedulers.blocking import BlockingScheduler
from apscheduler.triggers.cron import CronTrigger
from apscheduler.triggers.interval import IntervalTrigger
from django.core.management.base import BaseCommand
from django_apscheduler.jobstores import DjangoJobStore
from django_apscheduler.models import DjangoJobExecution
logger = logging.getLogger("runsch")
scheduler = BlockingScheduler(timezone=settings.TIME_ZONE)
def task():
pass
def delete_old_job_executions(max_age=604_800):
"""This job deletes all apscheduler job executions older than `max_age` from the database."""
DjangoJobExecution.objects.delete_old_job_executions(max_age)
class Command(BaseCommand):
help = "Runs apscheduler."
def handle(self, *args, **options):
#scheduler = BlockingScheduler(timezone=settings.TIME_ZONE)
logger.info(scheduler.add_jobstore(DjangoJobStore(), "Net"))
scheduler.add_job(
task,
trigger=IntervalTrigger(minutes=5), # Every 10 seconds
id="Redis",
max_instances=1,
replace_existing=True,
jobstore = "Net"
)
try:
scheduler.start()
except KeyboardInterrupt:
scheduler.shutdown()
from django.conf import settings
from apscheduler.schedulers.blocking import BlockingScheduler
from apscheduler.triggers.cron import CronTrigger
from apscheduler.triggers.interval import IntervalTrigger
from django.core.management.base import BaseCommand
from django_apscheduler.jobstores import DjangoJobStore
from django_apscheduler.models import DjangoJobExecution
from new.management.commands import runapscheduler
@api_view(['GET'])
def startRedisTask(request):
#scheduler = BlockingScheduler(timezone=settings.TIME_ZONE)
# scheduler.add_jobstore(DjangoJobStore(), "default")
logger.info(runapscheduler.scheduler.get_jobs(jobstore="Net"))
runapscheduler.forPrint()
return Response("Haproxy Task started Successfully", status=200)