Rollback
Dieser Commit ist enthalten in:
33
v2_adminpanel/scheduler.py
Normale Datei
33
v2_adminpanel/scheduler.py
Normale Datei
@@ -0,0 +1,33 @@
|
||||
"""
|
||||
Scheduler module for handling background tasks
|
||||
"""
|
||||
import logging
|
||||
from apscheduler.schedulers.background import BackgroundScheduler
|
||||
import config
|
||||
from utils.backup import create_backup
|
||||
|
||||
|
||||
def scheduled_backup():
|
||||
"""Führt ein geplantes Backup aus"""
|
||||
logging.info("Starte geplantes Backup...")
|
||||
create_backup(backup_type="scheduled", created_by="scheduler")
|
||||
|
||||
|
||||
def init_scheduler():
|
||||
"""Initialize and configure the scheduler"""
|
||||
scheduler = BackgroundScheduler()
|
||||
|
||||
# Configure daily backup job
|
||||
scheduler.add_job(
|
||||
scheduled_backup,
|
||||
'cron',
|
||||
hour=config.SCHEDULER_CONFIG['backup_hour'],
|
||||
minute=config.SCHEDULER_CONFIG['backup_minute'],
|
||||
id='daily_backup',
|
||||
replace_existing=True
|
||||
)
|
||||
|
||||
scheduler.start()
|
||||
logging.info(f"Scheduler started. Daily backup scheduled at {config.SCHEDULER_CONFIG['backup_hour']:02d}:{config.SCHEDULER_CONFIG['backup_minute']:02d}")
|
||||
|
||||
return scheduler
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren