File: /home/wbwebdes/pyton/stderr.log
from flask import Flask, render_template_string
import requests
app = Flask(__name__)
# Configureer de pagina's om te controleren
PAGES_TO_CHECK = [
"https://example.com/page1",
"https://example.com/page2",
"https://example.com/page3"
]
# Template voor de statuspagina
status_template = """
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Statuspagina</title>
<style>
body {
font-family: Arial, sans-serif;
text-align: center;
margin-top: 50px;
}
.status {
font-size: 24px;
font-weight: bold;
}
.up {
color: green;
}
.down {
color: red;
}
</style>
</head>
<body>
<h1>Systeem Status</h1>
<div class="status {{ status_class }}">{{ status_message }}</div>
</body>
</html>
"""
def check_pages():
errors = []
for page in PAGES_TO_CHECK:
try:
response = requests.get(page)
if response.status_code == 404:
errors.append(f"{page} returned a 404 Not Found")
elif response.status_code >= 500:
errors.append(f"{page} returned a {response.status_code} Server Error")
elif response.status_code != 200:
errors.append(f"{page} returned status code {response.status_code}")
except requests.RequestException as e:
errors.append(f"Error checking {page}: {str(e)}")
if errors:
return "down", "Onze systemen hebben problemen: " + "; ".join(errors)
else:
return "up", "Onze systemen zijn volledig operationeel."
@app.route('/')
def status():
status_class, status_message = check_pages()
return render_template_string(status_template, status_class=status_class, status_message=status_message)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=80)