Initialize logging setup in main application prior to app creation for improved error tracking and management.
This commit is contained in:
parent
008167268f
commit
d49d509451
37
app/core/logging_setup.py
Normal file
37
app/core/logging_setup.py
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
import logging
|
||||||
|
import os
|
||||||
|
from logging.handlers import RotatingFileHandler
|
||||||
|
|
||||||
|
def setup_logging():
|
||||||
|
# 1. Log-Verzeichnis erstellen (falls nicht vorhanden)
|
||||||
|
log_dir = "logs"
|
||||||
|
if not os.path.exists(log_dir):
|
||||||
|
os.makedirs(log_dir)
|
||||||
|
|
||||||
|
log_file = os.path.join(log_dir, "mindnet.log")
|
||||||
|
|
||||||
|
# 2. Formatter definieren (Zeitstempel | Level | Modul | Nachricht)
|
||||||
|
formatter = logging.Formatter(
|
||||||
|
'%(asctime)s | %(levelname)-8s | %(name)s | %(message)s',
|
||||||
|
datefmt='%Y-%m-%d %H:%M:%S'
|
||||||
|
)
|
||||||
|
|
||||||
|
# 3. File Handler: Schreibt in Datei (max. 5MB pro Datei, behält 5 Backups)
|
||||||
|
file_handler = RotatingFileHandler(
|
||||||
|
log_file, maxBytes=5*1024*1024, backupCount=5, encoding='utf-8'
|
||||||
|
)
|
||||||
|
file_handler.setFormatter(formatter)
|
||||||
|
file_handler.setLevel(logging.INFO)
|
||||||
|
|
||||||
|
# 4. Stream Handler: Schreibt weiterhin auf die Konsole
|
||||||
|
console_handler = logging.StreamHandler()
|
||||||
|
console_handler.setFormatter(formatter)
|
||||||
|
console_handler.setLevel(logging.INFO)
|
||||||
|
|
||||||
|
# 5. Root Logger konfigurieren
|
||||||
|
logging.basicConfig(
|
||||||
|
level=logging.INFO,
|
||||||
|
handlers=[file_handler, console_handler]
|
||||||
|
)
|
||||||
|
|
||||||
|
logging.info(f"📝 Logging initialized. Writing to {log_file}")
|
||||||
|
|
@ -30,6 +30,11 @@ try:
|
||||||
except Exception:
|
except Exception:
|
||||||
admin_router = None
|
admin_router = None
|
||||||
|
|
||||||
|
from .core.logging_setup import setup_logging
|
||||||
|
|
||||||
|
# Initialisierung noch VOR create_app()
|
||||||
|
setup_logging()
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
# --- WP-25: Lifespan Management ---
|
# --- WP-25: Lifespan Management ---
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user