towerops/lib/towerops/monitoring
Graham McIntire 64ad63d3e3
fix: handle etcd watcher creation errors gracefully
The pods were crashing with a MatchError when the etcd watcher failed
to initialize. The code was pattern matching on {:ok, watcher} but
eetcd was returning {:error, :eetcd_conn_unavailable}.

Error:
  ** (MatchError) no match of right hand side value:
  {:error, :eetcd_conn_unavailable}

This was causing CrashLoopBackOff because the application couldn't
start the Monitoring.Supervisor due to EtcdCoordinator initialization
failure.

Fix:
  - Add case statement to handle both {:ok, watcher} and {:error, reason}
  - Log the specific error when watcher creation fails
  - Return proper error tuple to supervisor for clean shutdown
2026-01-24 15:02:46 -06:00
..
check.ex remote agent/cloud improvements 2026-01-24 09:16:41 -06:00
device_monitor.ex snmpkit overhaul and etcd 2026-01-23 16:23:57 -06:00
etcd_coordinator.ex fix: handle etcd watcher creation errors gracefully 2026-01-24 15:02:46 -06:00
ping.ex fix: use system ping command instead of raw ICMP sockets 2026-01-21 11:15:59 -06:00
ping_behaviour.ex snmp bits 2026-01-03 14:41:28 -06:00
supervisor.ex snmpkit overhaul and etcd 2026-01-23 16:23:57 -06:00