Geplande Taken (Cron Jobs)¶
Geplande (cron-)taken draaien op de host en voeren Django managementcommando's uit binnen de servercontainer via docker exec. Omdat het native taakframework van Django 6.0 geen ingebouwde planner kent (alleen de db_worker voor ingevoegde taken), wordt al het periodieke onderhoud door host-cron aangestuurd.
Cron-taken in productie¶
| Cron-naam | Planning | Commando | Doel |
|---|---|---|---|
| ses-cleanup-remote-seats | dagelijks 03:00 | cleanup_remote_seats |
Remote-app zitplaatsen vrijgeven die zijn achtergebleven |
| ses-prewarm-due-exams | elke 5 min | prewarm_due_exams |
Remote-app zitplaatsen voorverwarmen voor toetsen die bijna starten |
| ses-import-ems-exams | elke 5 min | import_ems_exams --scheduled |
Externe EMS-omgevingen pollen voor nieuwe/aangepaste toetsen |
| ses-cleanup-sso-sessions | dagelijks 04:00 | cleanup_expired_sso_sessions |
Verlopen SSO-sessies en refresh-tokens verwijderen |
| ses-cleanup-db-task-results | dagelijks 04:05 | prune_db_task_results --min-age-days 14 --failed-min-age-days 45 |
Voltooide taakresultaten opschonen (zie Achtergrondtaken) |
Elke taak schrijft zijn uitvoer naar een log onder /var/log (bijv. ses-cleanup.log, ses-task-prune.log).
De worker voor achtergrondtaken (python manage.py db_worker) is een langlopende service die door Docker wordt gestart, geen cron-taak.