feat: always write a fixed-name copy of server/sud logs, use .json for sud logs

Alongside the dated log files, ServerLogTask/SudLogTask now also write
(and overwrite) a fixed-name copy on every write() - logs/log_latest.json
and logs/log_latest_sud.json - so a dashboard/tail-style consumer can
point at one unchanging path instead of tracking the current run's
timestamped filename.

Also switches SudLogTask's own dated/latest filenames from .log to .json,
matching what they've always actually contained. This incidentally fixes
utils/analyze_log.py's two-argument CLI form, which already assumed a
.json extension for sud logs.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JFDeoTKBDkXRhPfnyDEoBt
This commit is contained in:
2026-07-01 20:23:16 +02:00
co-authored by Claude Sonnet 5
parent da7e954b7c
commit a495e758fd
3 changed files with 24 additions and 6 deletions
+1 -1
View File
@@ -744,7 +744,7 @@ same sample format and `log_interval` checkpointing, but only records while
a Sud run is actually active. A fresh run starts recording on a genuine
`Start` from `IDLE`/`DONE` (a `Pause`→resume `Start` is a no-op - it's still
the same run) and is written out on `Stop` or natural completion (`DONE`),
to `logs/log_<date>T<time>_<sud-name>.log`.
to `logs/log_<date>T<time>_<sud-name>.json`.
`server/brewpi.py` also mirrors everything it prints (every component's
`print()`-based status/debug output) to a plain text log,