dodanie zadania
This commit is contained in:
parent
55d417708f
commit
92c8749bd8
16
app.py
16
app.py
@ -585,6 +585,19 @@ def schedule_auto_export_job():
|
||||
cron_used = s.export_cron if s.export_cron else "0 */12 * * *"
|
||||
print(f"[DEBUG] schedule_auto_export_job -> cron_schedule={cron_used}")
|
||||
|
||||
def cleanup_old_logs():
|
||||
with app.app_context():
|
||||
s = get_settings()
|
||||
cutoff_date = datetime.utcnow() - timedelta(days=s.log_retention_days)
|
||||
old_logs = OperationLog.query.filter(OperationLog.timestamp < cutoff_date).all()
|
||||
deleted_count = len(old_logs)
|
||||
for log in old_logs:
|
||||
db.session.delete(log)
|
||||
db.session.commit()
|
||||
log_operation(f"Automatyczna retencja logów: usunięto {deleted_count} logów starszych niż {s.log_retention_days} dni.")
|
||||
|
||||
|
||||
|
||||
###############################################################################
|
||||
# Konfiguracja APScheduler - harmonogram zadań
|
||||
###############################################################################
|
||||
@ -619,6 +632,7 @@ def reschedule_jobs():
|
||||
schedule_auto_export_job()
|
||||
schedule_retention_job()
|
||||
schedule_auto_binary_backup_job()
|
||||
scheduler.add_job(func=cleanup_old_logs, trigger='interval', days=1, id="cleanup_logs_job", replace_existing=True)
|
||||
|
||||
###############################################################################
|
||||
# Filtr Jinja2 - basename
|
||||
@ -1388,6 +1402,8 @@ if __name__ == '__main__':
|
||||
schedule_retention_job()
|
||||
schedule_auto_export_job()
|
||||
schedule_auto_binary_backup_job()
|
||||
scheduler.add_job(func=cleanup_old_logs, trigger='interval', days=1, id="cleanup_logs_job")
|
||||
|
||||
scheduler.start()
|
||||
atexit.register(lambda: scheduler.shutdown())
|
||||
app.run(host='0.0.0.0', port=5581, use_reloader=False, debug=True)
|
||||
|
Loading…
x
Reference in New Issue
Block a user