📚 Improved error monitoring configuration & utility files 🖥️

This commit is contained in:
2025-05-30 20:25:21 +02:00
parent f45fcc5d0e
commit 5543e9ba5e
4 changed files with 783 additions and 1 deletions

View File

@@ -222,6 +222,13 @@ def format_datetime_filter(value, format='%d.%m.%Y %H:%M'):
setup_logging()
log_startup_info()
# Error-Monitoring-System starten
try:
from utils.logging_config import setup_error_monitoring
setup_error_monitoring()
except Exception as e:
print(f"⚠️ Error-Monitoring konnte nicht gestartet werden: {str(e)}")
# Logger für verschiedene Komponenten
app_logger = get_logger("app")
auth_logger = get_logger("auth")
@@ -4859,4 +4866,54 @@ def get_printers():
return jsonify({
"error": f"Fehler beim Laden der Drucker: {str(e)}",
"printers": []
}), 500
@app.route('/api/admin/error-monitor/stats', methods=['GET'])
@admin_required
def get_error_monitor_stats():
"""Gibt Statistiken des Error-Monitoring-Systems zurück."""
try:
from utils.error_monitor import get_error_monitor
monitor = get_error_monitor()
stats = monitor.get_stats()
return jsonify({
"success": True,
"stats": stats
})
except Exception as e:
app_logger.error(f"Fehler beim Abrufen der Error-Monitor-Statistiken: {str(e)}")
return jsonify({
"success": False,
"error": str(e)
}), 500
@app.route('/api/admin/error-monitor/force-report', methods=['POST'])
@admin_required
def force_error_report():
"""Erzwingt das sofortige Senden eines Error-Reports (für Tests)."""
try:
from utils.error_monitor import get_error_monitor
monitor = get_error_monitor()
success = monitor.force_report()
if success:
return jsonify({
"success": True,
"message": "Error Report erfolgreich versendet"
})
else:
return jsonify({
"success": False,
"error": "Report konnte nicht versendet werden"
}), 500
except Exception as e:
app_logger.error(f"Fehler beim Erzwingen des Error-Reports: {str(e)}")
return jsonify({
"success": False,
"error": str(e)
}), 500