feat(observability): emit a startup event metric to signal application initialization

Send a telemetry event when the process starts to provide better visibility into application lifecycle transitions.
This commit is contained in:
Nils Andreas Svee committed 2026-04-13 17:49:19 +07:00
1 parent e7cbdbb265
commit b930a01fd6
1 file changed
+12 -1
+12 -1
View File
@@ -14,8 +14,10 @@ mod time;
mod util; mod util;
use crate::baseliner::{Baseliner, ReflectorStats}; use crate::baseliner::{Baseliner, ReflectorStats};
use crate::metrics::Metrics; use crate::metrics::{Metric, Metrics};
use crate::time::Time;
use ::log::{debug, info}; use ::log::{debug, info};
use rustix::time::ClockId;
use std::collections::HashMap; use std::collections::HashMap;
use std::net::IpAddr; use std::net::IpAddr;
use std::str::FromStr; use std::str::FromStr;
@@ -105,6 +107,15 @@ fn main() -> anyhow::Result<()> {
})?; })?;
} }
if let Some(tx) = metrics_tx.clone() {
let _ = tx.try_send(Metric::Event {
name: "starting",
reason: "",
reflector: None,
timestamp_ns: Time::new(ClockId::Realtime).as_nanos(),
});
}
let ping_metrics_tx = metrics_tx let ping_metrics_tx = metrics_tx
.as_ref() .as_ref()
.filter(|_| config.observability_export_ping_metrics) .filter(|_| config.observability_export_ping_metrics)