Refresh-Endpoint, Logging mit Timestamp, 12h-Intervall, PDF-Fehler-Logs

This commit is contained in:
2026-01-31 15:47:01 +01:00
parent c13f07d98c
commit 5cf75a79bc
3 changed files with 33 additions and 5 deletions

View File

@@ -81,7 +81,7 @@ Die eigentliche iCal-Datei für Abos und direkten Download ist unter `/calendar.
**Konfiguration (optional, Umgebungsvariablen):**
- `KANTINE_BASE_URL` Basis-URL der Kantine (Standard: `http://kantine-bhz.de`)
- `REFRESH_INTERVAL_SECONDS` Sekunden zwischen Aktualisierungen (Standard: 86400 = 24 h)
- `REFRESH_INTERVAL_SECONDS` Sekunden zwischen Aktualisierungen (Standard: 43200 = 12 h)
- `PUBLIC_URL` Öffentliche Basis-URL (z. B. `https://kantine.elpatron.me`). Wenn gesetzt, wird diese URL für die Kalender-Abo-URL auf der Startseite verwendet. **Empfohlen hinter HTTPS-Proxy**, falls der Proxy keine `X-Forwarded-Proto`/`X-Forwarded-Host`-Header sendet sonst erscheint dort weiterhin `http://`.
---
@@ -99,6 +99,9 @@ docker run -p 8000:8000 -e PUBLIC_URL=https://kantine.elpatron.me kantine2ical
- **Startseite** (Anleitung + Abo-URL): `http://<host>:8000/` bzw. Ihre HTTPS-URL
- **iCal-Abo:** `http://<host>:8000/calendar.ics` bzw. `https://<host>/calendar.ics`
- **Manueller Refresh:** `GET /refresh` (z. B. `https://<host>/refresh`) löst sofort einen Abruf der Speiseplan-PDFs aus. Nützlich, wenn auf [kantine-bhz.de](http://kantine-bhz.de) ein neuer Plan liegt und der 24h-Refresh noch nicht gelaufen ist. Nach dem Aufruf enthält der Kalender die aktuellen Daten.
**Kalender wird nicht aktualisiert?** Container-Logs prüfen (`docker logs <container>`): Dort erscheinen gefundene PDFs und Fehler beim Laden/Parsen. Bei fehlgeschlagenem PDF wird die URL und die Exception geloggt.
**Mit Docker Compose:**
```bash