fix(observability): ensure all metric outputs are newline-terminated

Append trailing newlines to metric string formats to ensure consistent parsing and record separation by monitoring backends.
This commit is contained in:
Nils Andreas Svee committed 2026-04-13 15:43:09 +07:00
1 parent 757a715a54
commit 72b4bc8dab
1 file changed
+4 -4
+4 -4
View File
@@ -205,7 +205,7 @@ impl Metrics {
timestamp_ns, timestamp_ns,
} => format!( } => format!(
"sqm_ping,host={host_tag},reflector={reflector},type={measurement_type} \ "sqm_ping,host={host_tag},reflector={reflector},type={measurement_type} \
rtt={rtt:.3},up_time={up_time:.3},down_time={down_time:.3} {timestamp_ns}i" rtt={rtt:.3},up_time={up_time:.3},down_time={down_time:.3} {timestamp_ns}i\n"
), ),
Metric::Rate { Metric::Rate {
dl_rate, dl_rate,
@@ -219,7 +219,7 @@ impl Metrics {
"sqm_rate,host={host_tag},direction=download \ "sqm_rate,host={host_tag},direction=download \
rate_kbps={dl:.0},load={rx_load:.4},delta_delay={delta_delay_down:.3} {timestamp_ns}i\n\ rate_kbps={dl:.0},load={rx_load:.4},delta_delay={delta_delay_down:.3} {timestamp_ns}i\n\
sqm_rate,host={host_tag},direction=upload \ sqm_rate,host={host_tag},direction=upload \
rate_kbps={ul:.0},load={tx_load:.4},delta_delay={delta_delay_up:.3} {timestamp_ns}i", rate_kbps={ul:.0},load={tx_load:.4},delta_delay={delta_delay_up:.3} {timestamp_ns}i\n",
dl = dl_rate, dl = dl_rate,
ul = ul_rate, ul = ul_rate,
), ),
@@ -232,7 +232,7 @@ impl Metrics {
timestamp_ns, timestamp_ns,
} => format!( } => format!(
"sqm_baseline,host={host_tag},reflector={reflector},direction=up baseline_ewma={baseline_up_ewma:.3},recent_ewma={recent_up_ewma:.3} {timestamp_ns}i\n "sqm_baseline,host={host_tag},reflector={reflector},direction=up baseline_ewma={baseline_up_ewma:.3},recent_ewma={recent_up_ewma:.3} {timestamp_ns}i\n
sqm_baseline,host={host_tag},reflector={reflector},direction=down baseline_ewma={baseline_down_ewma:.3},recent_ewma={recent_down_ewma:.3} {timestamp_ns}i" sqm_baseline,host={host_tag},reflector={reflector},direction=down baseline_ewma={baseline_down_ewma:.3},recent_ewma={recent_down_ewma:.3} {timestamp_ns}i\n"
), ),
Metric::Event { Metric::Event {
name, name,
@@ -249,7 +249,7 @@ impl Metrics {
if !reason.is_empty() { if !reason.is_empty() {
write!(tags, ",reason={reason}").unwrap_or(()); write!(tags, ",reason={reason}").unwrap_or(());
} }
format!("sqm_event,{tags} count=1i {timestamp_ns}") format!("sqm_event,{tags} count=1i {timestamp_ns}\n")
}, },
} }
} }