4.5 KiB
4.5 KiB
Incident Response Runbook — LeoCRM
Schnellreferenz
| Szenario | Erste Maßnahme | Escalation |
|---|---|---|
| Server offline | Coolify Dashboard prüfen | SSH: root@46.225.91.159 |
| DB offline | docker exec postgres-* psql -U crm_user -d crm_db -c "SELECT 1" |
Backup restore prüfen |
| Redis offline | docker exec redis-* redis-cli ping |
Worker neustarten |
| App 500 Errors | docker logs crm_app-* --tail 100 |
Logs in Coolify prüfen |
| Worker hängt | docker logs crm_worker-* --tail 100 |
ARQ Queue in Redis prüfen |
| Disk full | df -h + docker system prune |
Alte Backups löschen |
| Deploy failed | Coolify Deploy Logs | Git Status prüfen |
1. Server offline
Symptome
- https://crm.media-on.de nicht erreichbar
- Coolify (https://server.media-on.de) nicht erreichbar
Maßnahmen
- SSH versuchen:
ssh root@46.225.91.159 - Wenn SSH geht:
docker ps— welche Container laufen? - Coolify neustarten:
docker restart coolify - Traefik prüfen:
docker logs coolify-proxy --tail 50 - Wenn Hetzner VPS offline: Hetzner Console (https://console.hetzner.cloud) → Server neustarten
2. Datenbank offline
Symptome
- Health Check:
database: down - App: 500 Errors auf allen API-Routen
- Frontend: "Verbindung fehlgeschlagen"
Maßnahmen
- Container prüfen:
docker ps | grep postgres - Logs:
docker logs postgres-xf7smknlger3hvkrsb910tui-* --tail 100 - Verbindung testen:
docker exec postgres-* psql -U crm_user -d crm_db -c "SELECT 1" - Wenn DB nicht startet: Disk voll?
df -h - Wenn DB korrupt: Backup restore mit
python scripts/restore.py - Benachrichtigung: System Dashboard → Alerts → Notification an Admin
3. Redis offline
Symptome
- Sessions funktionieren nicht (Login loop)
- Worker-Jobs werden nicht ausgeführt
- WebSocket-Chat funktioniert nicht
Maßnahmen
- Container prüfen:
docker ps | grep redis - Logs:
docker logs redis-xf7smknlger3hvkrsb910tui-* --tail 50 - Neustart:
docker restart redis-xf7smknlger3hvkrsb910tui-* - Wenn Redis korrupt:
docker exec redis-* redis-cli FLUSHALL(Achtung: löscht Sessions!) - Worker neustarten:
docker restart crm_worker-xf7smknlger3hvkrsb910tui-*
4. App 500 Errors
Symptome
- API-Routen returnieren 500
- Frontend zeigt Fehlermeldungen
Maßnahmen
- Logs:
docker logs crm_app-xf7smknlger3hvkrsb910tui-* --tail 100 - Health Check:
curl https://crm.media-on.de/api/v1/health - Wenn Migration fehlt:
docker exec crm_app-* python -m alembic upgrade head - Wenn Plugin fehlerhaft: Plugin in Settings deaktivieren
- Wenn Code-Bug: Fix committen + pushen +
bash scripts/fast-deploy.sh full
5. Worker hängt
Symptome
- Background-Jobs werden nicht ausgeführt (Mail-Sync, Backups, Search-Index)
- ARQ Queue wächst
Maßnahmen
- Logs:
docker logs crm_worker-xf7smknlger3hvkrsb910tui-* --tail 100 - Redis Queue prüfen:
docker exec redis-* redis-cli LLEN arq:queue - Worker neustarten:
docker restart crm_worker-xf7smknlger3hvkrsb910tui-* - Wenn Queue voll:
docker exec redis-* redis-cli DEL arq:queue(Achtung: löscht ausstehende Jobs!)
6. Disk full
Symptome
- DB kann nicht schreiben
- Uploads schlagen fehl
- Backups schlagen fehl
Maßnahmen
- Disk prüfen:
df -h - Docker cleanup:
docker system prune -a --volumes(Achtung: nur ungenutzte Container/Images) - Alte Backups löschen:
ls /backups/ | head -20+rm -rf /backups/leocrm_backup_oldest - Logs löschen:
docker logs crm_app-* --tail 0 2>&1 | wc -l+truncate -s 0 $(docker inspect --format='{{.LogPath}}' crm_app-*) - Temp-Dateien:
rm -rf /tmp/leocrm_*
7. Deploy failed
Symptome
- Coolify zeigt Deploy Status:
failed - App läuft noch mit altem Code
Maßnahmen
- Coolify Deploy Logs prüfen (https://server.media-on.de)
- Git Status:
git status && git log --oneline -5 - Lokal bauen:
cd frontend && npm run build— tsc errors? - Backend import testen:
/opt/venv/bin/python -c "import app.main" - Fix committen + pushen + neu deployen
Post-Mortem Template
## Incident: [Titel]
- **Datum**: YYYY-MM-DD HH:MM
- **Dauer**: X Minuten/Stunden
- **Auswirkung**: [Welche User/Funktionen betroffen]
- **Ursache**: [Root Cause]
- **Lösung**: [Was wurde getan]
- **Lessons Learned**: [Was können wir besser machen]
- **Action Items**: [Konkrete Aufgaben um Wiederholung zu verhindern]
Kontakt
- Server: root@46.225.91.159 (SSH Key: ~/.ssh/id_ed25519)
- Coolify: https://server.media-on.de
- Forgejo: https://forgejo.media-on.de/Leopoldadmin/leocrm
- App: https://crm.media-on.de