fix: prevent collector subprocess from deadlocking on full pipe buffer
All checks were successful
Dev / test (push) Successful in 1m13s
Dev / release (push) Successful in 41s
Dev / docker (push) Has been skipped

Collector was spawned with stdout=PIPE but nobody read from the pipe.
After days of accumulated log output the OS buffer filled, blocking
the collector and freezing all metrics updates.
This commit is contained in:
Stefano Bertelli 2026-04-07 17:48:16 -05:00
parent 0babff823a
commit cca49ca2cf

View file

@ -92,8 +92,8 @@ def _start_collector() -> None:
global _collector_proc global _collector_proc
_collector_proc = subprocess.Popen( _collector_proc = subprocess.Popen(
[sys.executable, "-m", "wiregui.collector"], [sys.executable, "-m", "wiregui.collector"],
stdout=subprocess.PIPE, stdout=subprocess.DEVNULL,
stderr=subprocess.STDOUT, stderr=subprocess.DEVNULL,
) )
logger.info("Metrics collector started (pid={})", _collector_proc.pid) logger.info("Metrics collector started (pid={})", _collector_proc.pid)