From 357da40b3941efd083ea053fab56dbef3cce619c Mon Sep 17 00:00:00 2001 From: Daniel Rouleau Date: Wed, 21 Oct 2026 18:04:23 -0700 Subject: [PATCH] test(relay): retain early startup failure output Signed-off-by: Daniel Rouleau --- crates/buzz-relay/tests/boot_lifecycle.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/crates/buzz-relay/tests/boot_lifecycle.rs b/crates/buzz-relay/tests/boot_lifecycle.rs index 5d7dd2491f..b0ec94c308 100644 --- a/crates/buzz-relay/tests/boot_lifecycle.rs +++ b/crates/buzz-relay/tests/boot_lifecycle.rs @@ -170,10 +170,15 @@ fn wait_for_relay_metrics(process: &mut RelayProcess, port: u16) -> String { fn wait_for_scraped_metric(process: &mut RelayProcess, port: u16, needle: &str) -> String { let deadline = Instant::now() + METRICS_SCRAPE_DEADLINE; loop { - assert!( - process.try_wait().is_none(), - "relay exited before exporting {needle}" - ); + if let Some(status) = process.try_wait() { + let stdout = join_capture(process.stdout.take(), "stdout"); + let stderr = join_capture(process.stderr.take(), "stderr"); + panic!( + "relay exited before exporting {needle}: {status}; stdout={}; stderr={}", + String::from_utf8_lossy(&stdout), + String::from_utf8_lossy(&stderr) + ); + } if let Ok(response) = scrape_metrics(port) { if response.contains(needle) { return response;