2c85df3499
Stefan ist unterwegs, ADB nicht moeglich. Dieses Script ist die andere
Haelfte des Crash-Reportings (commit 21a315c hat die App-Seite + Bridge-
Endpoint gebaut):
Nutzung:
tools/fetch-app-logs.sh # 200 letzte Eintraege
tools/fetch-app-logs.sh --limit 50
tools/fetch-app-logs.sh --watch # alle 5s pollen + Diff ausgeben
tools/fetch-app-logs.sh --clear # Log auf VM nach Abholen leeren
Liest $ARIA_DIAG_URL aus .claude/aria-vm.env, ruft GET /api/app-log.
Speichert komplette JSON-Response in .aria-debug/app-log-<ts>.json
(gitignored). Stdout zeigt kompakt: Uhrzeit, Level, Scope, Message,
erste 8 Stack-Frames pro Eintrag.
.gitignore: .aria-debug/ ist komplett ausgeschlossen (Crashes
koennen private Daten enthalten).
tools/README.md: kurze Doku des Workflows.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
35 lines
1.2 KiB
Markdown
35 lines
1.2 KiB
Markdown
# tools/
|
|
|
|
Hilfsskripte für die Dev-Maschine. Brauchen `.claude/aria-vm.env` (aus
|
|
`.example` kopieren + lokale VM-IP eintragen).
|
|
|
|
## fetch-app-logs.sh
|
|
|
|
Holt App-Crash-Logs von der VM und speichert sie unter `.aria-debug/`
|
|
(gitignored). Die App schickt JS-Errors und ungefangene Promise-
|
|
Rejections via RVS an die Bridge — Bridge sammelt in
|
|
`/shared/logs/app.log`, Diagnostic-Server gibt sie via
|
|
`GET /api/app-log` raus.
|
|
|
|
```bash
|
|
tools/fetch-app-logs.sh # 200 neueste Eintraege
|
|
tools/fetch-app-logs.sh --limit 50 # weniger
|
|
tools/fetch-app-logs.sh --watch # alle 5s pollen, neue rausgeben
|
|
tools/fetch-app-logs.sh --clear # nach Abholen Log auf VM leeren
|
|
```
|
|
|
|
Ausgabe enthaelt pro Eintrag: Uhrzeit, Level (error/warn/info), Scope
|
|
(z.B. `ChatScreen.InboxModal` oder `global-fatal`), Message, und die
|
|
ersten ~8 Stack-Frames. Die kompletten Daten liegen als JSON in
|
|
`.aria-debug/app-log-<timestamp>.json`.
|
|
|
|
Workflow nach einem Crash:
|
|
|
|
1. App rebuilden mit Crash-Reporting (passiert automatisch ab dem
|
|
`21a315c`-Commit)
|
|
2. Crash in der App ausloesen
|
|
3. `tools/fetch-app-logs.sh` auf der Dev-Maschine
|
|
4. Stacktrace lesen / Claude geben
|
|
5. Fix bauen
|
|
6. `tools/fetch-app-logs.sh --clear` damit der Log wieder sauber ist
|