Replaced fire-and-forget Task.start calls with reliable Oban workers for all alert notifications. **Why Oban instead of Task.start:** - ✅ Persistent - jobs survive crashes/restarts - ✅ Automatic retries with backoff (3 attempts) - ✅ Monitoring via Oban dashboard - ✅ Rate limiting via queue concurrency - ✅ Distributed coordination across servers **Changes:** - Created AlertNotificationWorker for trigger/acknowledge/resolve - Added notifications queue (concurrency: 10) to Oban config - Replaced 4 Task.start calls in alerts.ex and device_monitor_worker.ex - Updated 2 test assertions for string alert_type **Files changed:** - lib/towerops/workers/alert_notification_worker.ex (new) - lib/towerops/alerts.ex - lib/towerops/workers/device_monitor_worker.ex - config/dev.exs - config/runtime.exs - test/towerops/alerts_test.exs Notifications are now guaranteed to be delivered with automatic retry. |
||
|---|---|---|
| .. | ||
| mix/tasks | ||
| snmpkit | ||
| towerops | ||
| towerops_web | ||
| snmp_lib.ex | ||
| snmp_mgr.ex | ||
| snmpkit.ex | ||
| towerops.ex | ||
| towerops_native.ex | ||
| towerops_web.ex | ||