111 — Health-Endpoints
Aktualisiert am 1. Juni 2026
111 — Health-Endpoints
PartnerDesk stellt zwei öffentliche Health-Endpoints zur Verfügung, die Monitoring-Tools (Uptime Robot, Pingdom, Cloud Run Liveness-Probes, k8s) abfragen können.
Endpoints
/health/live
Liveness-Probe. Antwortet immer 200 OK, solange der PHP-Prozess läuft.
curl https://app.partnerdesk.io/health/live
→ HTTP 200
{"status": "alive"}
Sinnvoll für: Container-Orchestrator (Docker Compose Healthcheck, Cloud Run, Kubernetes). Bei non-200 wird der Container neu gestartet.
/health/ready
Readiness-Probe. Prüft, ob die App wirklich Traffic bedienen kann:
- DB-Verbindung (
SELECT 1). - Redis-Ping.
- Messenger-Queue-Gesundheit (siehe unten).
- Disk-Space.
curl https://app.partnerdesk.io/health/ready
→ HTTP 200 (alles OK)
oder
→ HTTP 503 (degraded)
{"status": "degraded", "checks": {...}}
Bei 503 schickt der Load Balancer keinen Traffic mehr zu dieser Instanz — andere Instanzen übernehmen.
Welche Checks?
| Check | Schwellenwert | Bei Überschreitung |
|---|---|---|
| DB | SELECT 1 muss < 1 s antworten |
503 |
| Cache | Redis PING muss < 100 ms antworten |
503 |
| Queue-Pending | > 1000 Messages warten in messenger_messages |
503 mit Hinweis |
| Queue-Stuck | Älteste Message > 10 Min in „in-process" | 503 |
| Disk | Freier Speicher in var/ < 10 % |
503 |
Monitoring-Setup
Uptime Robot
URL: https://app.partnerdesk.io/health/ready. Interval: 5 Min. Alert bei nicht-200.
Cloud Run
In der Service-Konfiguration:
- Liveness-Probe:
/health/live(alle 30 s). - Readiness-Probe:
/health/ready(alle 10 s).
Kubernetes
livenessProbe:
httpGet:
path: /health/live
port: 80
periodSeconds: 30
readinessProbe:
httpGet:
path: /health/ready
port: 80
periodSeconds: 10
Public-Access
Beide Endpoints sind public (kein JWT/Auth nötig). Damit Monitoring-Tools sie ohne Setup abfragen können.
Privacy-relevante Daten werden nicht zurückgegeben — nur Status-Flags.
Wer sieht den Status?
- Plattform-Admin: über das Monitoring-Tool.
- Tenant-Admin: indirekt — wenn
ready503antwortet, sehen Sie ggf. langsame Responses oder „Service unavailable"-Pages. - Partner: nichts (sieht nur den UI-Layer).
Was bei degraded?
Plattform-Owner handelt:
- DB-Lag: Postgres-Last analysieren.
- Queue-Pending hoch: zusätzliche Worker hochfahren.
- Disk-voll: alte Backups/Logs aufräumen.
Tenant-Admins sind nicht betroffen, solange wenigstens eine Instanz ready ist.
Verwandte Kapitel
Technische Tiefen-Doku: ../022-superadmin-frontend-health.md, ../112-operational-polish.md