modified: app.py

modified:   templates/logs.html
This commit is contained in:
SimolZimol
2024-09-03 13:09:19 +02:00
parent 764f4832cd
commit 2748b7583e
2 changed files with 48 additions and 22 deletions

31
app.py
View File

@@ -1,12 +1,15 @@
from flask import Flask, render_template, redirect, url_for, request, session
from flask import Flask, render_template, redirect, url_for, request, session, jsonify, send_file
import os
import subprocess
import psutil
import mysql.connector
from datetime import datetime
app = Flask(__name__)
app.secret_key = os.getenv("FLASK_SECRET_KEY", "default_secret_key")
LOG_FILE_PATH = os.path.join("logs", f"{datetime.now().strftime('%Y-%m-%d')}.log")
# Verwende Umgebungsvariablen aus Coolify für die Datenbankverbindung
DB_HOST = os.getenv("DB_HOST")
DB_PORT = os.getenv("DB_PORT")
@@ -138,5 +141,31 @@ def users():
return render_template("users.html", users=users)
return redirect(url_for("login"))
@app.route("/logs")
def view_logs():
"""Zeigt die Logs des Bots im Admin-Panel an."""
if "username" in session:
return render_template("logs.html")
return redirect(url_for("login"))
@app.route("/get_logs")
def get_logs():
"""Liest den Inhalt der Log-Datei und gibt ihn zurück."""
if "username" in session:
try:
with open(LOG_FILE_PATH, 'r', encoding='utf-8') as file:
logs = file.read()
return jsonify({"logs": logs})
except FileNotFoundError:
return jsonify({"logs": "Log file not found."})
return redirect(url_for("login"))
@app.route("/download_logs")
def download_logs():
"""Bietet die Log-Datei zum Download an."""
if "username" in session:
return send_file(LOG_FILE_PATH, as_attachment=True)
return redirect(url_for("login"))
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5000, debug=True)