v0.4.1
Minor release. Adds an alternative input source — operators can now
stream directly from a systemd journal unit instead of pointing at a
log file. Useful on setups where log files are not exposed or where
rotation makes the right path hard to pin down. Also includes a
follow-up to the LIVE-70 work that lets the shred-streams snapshot
surface a (peak N) annotation when the chart shows recent err
activity that the last batch sample alone would hide.
Added
-
--unit <SERVICE>— stream the log from a systemd journal unit
instead of a file. Mutually exclusive with the positional log
path via clapArgGroup(exactly one must be passed). Spawns
journalctlvia argv-safeCommand::args([...])— no shell
involved, so operator-supplied unit names cannot inject. The
child is held inArc<Mutex<Child>>onTailHandle;Drop
signals shutdown, kills the child, and waits. -
--since <SPEC>— historical scan window for journal mode.
Default10 minutes ago. Accepts anythingjournalctl --since
understands (today,yesterday,"1 hour ago", ISO dates).
Bounds the historical bulk read only; the Live tab tail starts
following from "now" viajournalctl -n 0 -fregardless of the
--sincewindow. -
LogSourceenum (File(PathBuf)/Journal { unit, since })
in a newcrate::sourcemodule.runnerandlive::tailboth
match on it;mainbuilds it from the parsed CLI args.
Changed
- Shred-streams snapshot in the Live tab appends
(peak N)after
theerrfield when the visible chart window has seen a batch
with more errors than the most recent sample (LIVE-70). The
annotation is suppressed in the steady state, so the line stays
compact when there is nothing extra to surface. Matches the
chart's visible-window scale 1:1 viaLaneSpark::peak_recent.
Documentation
- README now demonstrates the journal-mode invocation pattern and
notes that--sincecontrols the historical scan only — the
Live tab always follows from "now" once tailing starts. Journal
mode is documented as Linux-only (requiresjournalctlon
PATH).