simpliest_fs/cleanup.py

27 lines
784 B
Python

import time
from datetime import datetime
import database
from config import load_config
global CONFIG
CONFIG = load_config()
def session_cleanup():
while True:
time.sleep(60) # Check every minute
now = datetime.now()
session_timeout = CONFIG["server"]["session_timeout"]
cursor = database.DB_CONN.cursor()
cursor.execute("SELECT session_id, last_access FROM sessions")
rows = cursor.fetchall()
for session_id, last_access in rows:
if (
now - datetime.fromisoformat(last_access)
).total_seconds() > session_timeout:
cursor.execute(
"DELETE FROM sessions WHERE session_id = ?", (session_id,)
)
database.DB_CONN.commit()