further rework to the documentation

This commit is contained in:
Codex Agent
2025-11-20 12:31:21 +01:00
parent 6afa44d947
commit 9afcaa7836
90 changed files with 1721 additions and 29 deletions

View File

@@ -0,0 +1,83 @@
---
id: howto-guest-upload-failing
title: How-to Gäste können nicht hochladen
sidebar_label: Gäste können nicht hochladen
---
Dieses Howto beschreibt, wie du vorgehst, wenn Gäste melden, dass sie keine Fotos mehr hochladen können (Fehler im UploadFlow oder „hängenbleibende“ Uploads).
## 1. Problem eingrenzen
Fragen an den Tenant/Support:
- Betrifft es **alle** Gäste oder nur einzelne?
- Betrifft es **alle** Events oder nur ein bestimmtes Event?
- Welche Fehlermeldung erscheint im GuestFrontend (so genau wie möglich, gerne mit Screenshot)?
- Seit wann tritt das Problem auf? (Zeitfenster)
Diese Informationen bestimmen, ob du in Richtung API/RateLimit, Storage/Queues oder EventKonfiguration schauen musst.
## 2. Basischecks API & App
1. **Public-API Status**
- Teste manuell einen Upload gegen ein TestEvent oder reproduziere das Problem mit dem betroffenen JoinToken.
- Achte auf HTTPStatuscodes im BrowserNetworkTab (4xx vs. 5xx).
2. **App- / Deployment-Status**
- Prüfe in Docker/Dokploy, ob App/Queue/Redis/DBContainer gesund sind.
- Schaue in `storage/logs/laravel.log` nach offensichtlichen Exceptions rund um das gemeldete Zeitfenster.
Wenn die PublicAPI generell 5xx liefert, greift eher das PublicAPIIncidentPlaybook (`docs/ops/deployment/public-api-incident-playbook.md`).
## 3. Queues & Upload-Health
Wenn das Problem hauptsächlich Uploads betrifft (andere Funktionen laufen):
1. **Queue-Längen prüfen**
- In Horizon:
- `media-storage`, `media-security` und ggf. `notifications` QueueLängen ansehen.
- In Logs:
- Warnungen aus `storage:check-upload-queues` oder `storage-jobs` suchen.
2. **Upload-Health-Command**
- Sicherstellen, dass `storage:check-upload-queues` regelmäßig läuft (Cron / Scheduler).
- Manuell ausführen (in der AppContainerShell):
```bash
php artisan storage:check-upload-queues
```
- Ausgaben/Logs prüfen:
- Meldungen zu „stalled“ Uploads, Events mit dauerhaft vielen PendingAssets.
## 4. Storage & Limit-Probleme
1. **Hot-Storage-Füllstand**
- Prüfen, ob das StorageVolume/Bucket nahe an 100 % ist (siehe `docs/ops/dr-storage-issues.md`).
- Wenn ja:
- Archivierung beschleunigen (`storage:archive-pending` verifizieren).
- Kurzfristig Speicher vergrößern oder Caches aufräumen.
2. **Paket-/Limit-Prüfungen**
- Wenn nur bestimmte Events betroffen sind:
- PaketLimits des Events prüfen (z.B. max_photos/max_guests).
- EventStatus (abgelaufen/archiviert?) prüfen.
- Logs können Fehlercodes liefern wie „photo_limit_exceeded“ diese deuten auf bewusst ausgelöste LimitSperren hin, nicht auf technische Fehler.
## 5. Typische Muster & Gegenmaßnahmen
- **Hohe Fehlerrate beim Upload (5xx)**
- Hinweis auf API/BackendProblem:
- Siehe PublicAPIRunbook und AppLogs (Datenbank/RedisFehler, Timeouts).
- **Uploads bleiben „ewig“ auf „wird verarbeitet“**
- Queues laufen nicht oder `media-storage`/`media-security` steckt fest:
- Horizon prüfen, ob WorkerContainer laufen.
- Ggf. Worker neu starten und Failed Jobs analysieren.
- **Nur ein Event betroffen, andere funktionieren**
- Meist Limit oder KonfigThema (Paket voll, Galerie abgelaufen, Event deaktiviert).
- TenantAdminUI prüfen: EventStatus, PaketStatus, Data Lifecycle Einstellungen.
## 6. Kommunikation
- **An Tenant/Support zurückmelden**:
- Was war die Ursache? (z.B. PaketLimit, temporäre Überlastung, StorageKnappheit).
- Was wurde getan? (z.B. Paket angepasst, Queues neu gestartet, Storage erweitert).
- Ob und wie der Tenant/gäste weiteres tun müssen (z.B. Seite neu laden, später erneut probieren).
Für tiefere Ursachen rund um Storage siehe `docs/ops/media-storage-spec.md` und `docs/ops/dr-storage-issues.md`.