Compare commits

..
2 Commits
Author SHA1 Message Date
rouggy 058f164ab6 docs(changelog): move log-viewer entry to 0.23.6 (0.23.5 already released) 2026-08-04 23:40:59 +02:00
rouggy 6c47c27775 feat(logviewer): keep ~4x more history (1 MB tail)
The viewer fetched only the last 256 KB (~1600 lines) of opslog.log. During a
busy trace the oldest lines scrolled out of the window while the operator was
still reading them. Raise the tail to 1 MB (~6500 lines); the backend already
allows up to 4 MB.
2026-08-04 23:37:55 +02:00
2 changed files with 16 additions and 1 deletions
+10
View File
@@ -1,4 +1,14 @@
[ [
{
"version": "0.23.6",
"date": "",
"en": [
"Log viewer: the window now keeps about four times more history (1 MB instead of 256 KB, ~6500 lines). During a busy trace the oldest lines used to scroll out of the buffer while you were still reading them; the larger window holds them."
],
"fr": [
"Visionneuse de log : la fenêtre conserve environ quatre fois plus d'historique (1 Mo au lieu de 256 Ko, ~6500 lignes). Lors d'une trace chargée, les plus vieilles lignes défilaient hors du buffer pendant qu'on les lisait encore ; la fenêtre agrandie les garde."
]
},
{ {
"version": "0.23.5", "version": "0.23.5",
"date": "", "date": "",
+6 -1
View File
@@ -21,7 +21,12 @@ import { TailLogFile, GetLogFilePath } from '../../wailsjs/go/main/App';
// 256 KB blob: with "cluster" or "acom" typed in, the window becomes exactly // 256 KB blob: with "cluster" or "acom" typed in, the window becomes exactly
// the subsystem trace you would have grepped for. // the subsystem trace you would have grepped for.
// • It polls only while open. A closed dialog costs nothing. // • It polls only while open. A closed dialog costs nothing.
const TAIL_BYTES = 256 * 1024; // 1 MB ≈ 6500 lines. The window is a sliding tail: once new lines push past it
// the oldest fall out of the fetched text entirely, so a small buffer dropped
// lines the operator was still reading during a busy trace (CAT/cluster/antenna
// polling). The backend caps this at 4 MB; 1 MB is a good balance against the
// per-poll payload while open.
const TAIL_BYTES = 1024 * 1024;
const POLL_MS = 1000; const POLL_MS = 1000;
export function LogViewer({ open, onOpenChange }: { open: boolean; onOpenChange: (v: boolean) => void }) { export function LogViewer({ open, onOpenChange }: { open: boolean; onOpenChange: (v: boolean) => void }) {