File tree Expand file tree Collapse file tree
a3s-observer-collector/src Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22
33All notable changes to a3s-observer will be documented in this file.
44
5+ ## [ Unreleased]
6+
7+ ### Changed
8+
9+ - The collector warns if the liveness heartbeat write fails — an unwritable
10+ ` A3S_OBSERVER_HEARTBEAT ` path would otherwise cause a silent livenessProbe restart-loop.
11+
512## [ 0.6.0] — exec intervention + fileguard hot-reload
613
714### Added / Changed
Original file line number Diff line number Diff line change @@ -170,7 +170,12 @@ async fn main() -> anyhow::Result<()> {
170170 // livenessProbe can detect a wedged collector (file goes stale → restart the pod).
171171 let heartbeat = std:: env:: var ( "A3S_OBSERVER_HEARTBEAT" )
172172 . unwrap_or_else ( |_| "/run/a3s-observer.alive" . into ( ) ) ;
173- let _ = std:: fs:: write ( & heartbeat, b"ok" ) ;
173+ if let Err ( e) = std:: fs:: write ( & heartbeat, b"ok" ) {
174+ // Warn loudly: a livenessProbe watching a never-written file would false-restart.
175+ tracing:: warn!( path = %heartbeat, error = %e,
176+ "heartbeat write failed — set A3S_OBSERVER_HEARTBEAT to a writable path, or a \
177+ livenessProbe on it will restart-loop the pod") ;
178+ }
174179
175180 let mut sigint = tokio:: signal:: unix:: signal ( tokio:: signal:: unix:: SignalKind :: interrupt ( ) ) ?;
176181 let mut sigterm = tokio:: signal:: unix:: signal ( tokio:: signal:: unix:: SignalKind :: terminate ( ) ) ?;
You can’t perform that action at this time.
0 commit comments