rcourtman
dd5df4285c
Verify v6 Ceph multi-source pool alerts are deduplicated ( #1341 )
...
When the same physical Ceph cluster is reported by both the Proxmox API
poller and a Pulse host-agent (same FSID), v5 stored it under two pool-ID
namespaces and ran alert evaluation on the raw, un-deduplicated list,
producing duplicate/flapping Ceph pool alerts and a per-pool override that
appeared to revert between identities.
v6 closes this without the v5 'agent:'-prefix patch: both ingest paths
reconcile by FSID before alert evaluation. State.UpsertCephCluster
(host-agent) and State.UpdateCephClustersForInstance (Proxmox) both funnel
through upsertCephClusterInSlice, which collapses same-FSID clusters into a
single reconciled entry, and both call sites run checkCephPoolStorage on the
STORED cluster. The per-pool override resolves across source aliases via
storageThresholdLookupIDs/cephPoolStorageSourceAliasID, and
clearStorageAliasAlerts removes any alias-keyed alert.
This adds a regression test asserting the observable outcome for the exact
dual-source scenario (host-agent + Proxmox API, same FSID, one pool at ~61%
with a 50% per-pool override): exactly one active Ceph pool usage alert,
override honored, no second/flapping alert across either ingest order or
repeated interleaved cycles. No behavior change.
2026-06-02 14:52:47 +01:00
..
2026-03-18 16:06:30 +00:00
2026-05-25 21:38:43 +01:00
2026-05-25 21:38:43 +01:00
2025-11-26 23:44:36 +00:00
2025-10-20 15:13:37 +00:00
2026-02-07 22:05:55 +00:00
2026-03-18 16:06:30 +00:00
2026-06-01 14:16:57 +01:00
2026-06-02 14:52:47 +01:00
2026-05-11 22:30:30 +01:00
2026-06-01 08:59:56 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-18 14:54:53 +01:00
2026-04-18 14:54:53 +01:00
2025-12-01 17:33:36 +00:00
2026-03-18 16:06:30 +00:00
2025-12-12 17:51:43 +00:00
2025-12-12 18:13:17 +00:00
2026-04-01 19:14:12 +01:00
2026-05-05 14:59:29 +01:00
2026-04-18 10:45:25 +01:00
2026-04-18 10:45:25 +01:00
2026-05-19 12:04:51 +01:00
2026-05-19 12:04:51 +01:00
2026-04-21 22:11:13 +01:00
2026-05-01 20:28:11 +01:00
2026-04-01 13:02:14 +01:00
2026-01-01 22:29:15 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2025-10-14 16:13:53 +00:00
2025-11-12 09:47:02 +00:00
2026-04-01 18:38:42 +01:00
2026-05-05 14:59:29 +01:00
2026-05-19 22:37:55 +01:00
2026-01-28 16:52:35 +00:00
2026-05-05 14:59:29 +01:00
2026-05-05 14:59:29 +01:00
2026-04-22 09:22:46 +01:00
2026-05-29 11:44:29 +01:00
2026-04-01 19:00:48 +01:00
2026-05-05 14:59:29 +01:00
2026-05-29 11:44:29 +01:00
2026-04-01 19:14:12 +01:00
2026-05-05 14:59:29 +01:00
2026-04-01 18:38:42 +01:00
2026-05-05 14:59:29 +01:00
2026-03-18 16:06:30 +00:00
2026-01-01 22:29:15 +00:00
2026-04-01 19:36:30 +01:00
2026-04-23 20:38:33 +01:00
2025-11-26 23:44:36 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-05-25 09:25:03 +01:00
2026-05-25 09:25:03 +01:00
2026-04-11 22:46:34 +01:00
2026-02-04 19:49:52 +00:00
2026-02-04 19:49:52 +00:00
2026-04-12 09:41:29 +01:00
2026-04-22 09:22:46 +01:00
2026-04-01 19:00:48 +01:00
2026-05-29 11:44:29 +01:00
2025-12-02 17:21:48 +00:00
2025-12-01 21:18:33 +00:00
2025-11-27 09:16:53 +00:00
2026-02-04 19:35:19 +00:00
2026-05-15 21:27:39 +01:00
2026-05-15 21:27:39 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-10 19:09:12 +01:00
2026-05-21 00:59:00 +01:00
2026-05-21 00:59:00 +01:00
2026-04-01 20:41:56 +01:00
2026-01-22 13:39:06 +00:00
2026-04-01 11:51:19 +01:00
2026-05-28 14:49:20 +01:00
2026-06-01 14:16:57 +01:00
2026-05-28 18:23:14 +01:00
2026-06-01 14:16:57 +01:00
2026-05-05 14:19:50 +01:00
2026-03-18 16:06:30 +00:00
2026-05-05 14:51:28 +01:00
2026-05-05 16:25:00 +01:00
2026-04-19 11:42:53 +01:00
2026-04-19 11:42:53 +01:00
2026-05-01 20:28:12 +01:00
2026-04-01 11:51:19 +01:00
2025-11-18 22:57:20 +00:00
2026-04-11 16:47:37 +01:00
2026-03-18 16:06:30 +00:00
2026-04-18 10:45:25 +01:00
2026-05-29 11:44:29 +01:00
2026-05-13 22:18:47 +01:00
2025-10-20 15:13:38 +00:00
2026-05-28 14:42:43 +01:00
2026-05-29 19:55:53 +01:00
2026-05-28 14:49:20 +01:00
2026-04-01 15:29:11 +01:00
2026-04-01 10:04:30 +01:00
2026-05-01 20:28:12 +01:00
2026-04-11 14:51:10 +01:00
2026-04-10 14:26:55 +01:00
2026-04-29 18:02:30 +01:00
2026-05-25 20:35:58 +01:00
2026-05-13 17:05:03 +01:00
2026-01-04 10:29:40 +00:00
2026-05-13 17:05:03 +01:00
2026-05-08 19:53:03 +01:00
2026-05-01 20:28:12 +01:00
2026-04-01 19:36:30 +01:00
2026-04-01 11:51:19 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-15 16:55:13 +01:00
2026-05-25 21:38:43 +01:00
2026-05-05 14:59:29 +01:00
2026-04-01 19:31:50 +01:00
2026-05-13 19:00:02 +01:00
2026-04-01 19:14:12 +01:00
2026-04-01 11:51:19 +01:00
2026-03-18 16:06:30 +00:00
2026-05-05 14:59:29 +01:00
2026-04-01 20:41:56 +01:00
2026-04-21 14:46:23 +01:00
2026-04-21 14:46:23 +01:00
2026-05-18 23:44:24 +01:00
2026-03-18 16:06:30 +00:00
2026-04-11 22:46:34 +01:00
2026-05-08 18:14:20 +01:00
2026-01-04 10:29:40 +00:00
2026-03-18 16:06:30 +00:00
2026-05-05 14:51:28 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-15 16:55:13 +01:00
2026-05-17 18:45:24 +01:00
2026-01-05 23:34:33 +00:00
2026-03-18 16:06:30 +00:00
2026-06-01 08:59:56 +01:00
2026-03-18 16:06:30 +00:00
2026-06-01 08:59:56 +01:00
2026-05-05 12:59:59 +01:00
2026-04-11 22:46:34 +01:00
2026-03-18 16:06:30 +00:00
2026-04-01 10:04:30 +01:00
2026-04-01 10:04:30 +01:00
2026-03-18 16:06:30 +00:00
2026-04-11 22:46:34 +01:00
2026-02-07 22:05:55 +00:00
2026-01-14 12:26:18 +00:00
2026-04-23 20:38:33 +01:00
2026-04-23 20:38:33 +01:00
2026-05-06 10:35:34 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-01 23:33:43 +01:00
2026-03-18 16:06:30 +00:00
2026-03-26 22:58:27 +00:00
2026-03-31 15:42:16 +01:00
2026-05-28 11:39:30 +01:00
2026-05-28 11:39:30 +01:00
2025-12-02 17:21:48 +00:00
2026-05-06 10:35:34 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-01-06 17:44:52 +00:00
2026-01-06 17:44:52 +00:00
2026-02-04 19:33:29 +00:00
2025-12-02 12:02:13 +00:00
2026-03-18 16:06:30 +00:00
2026-05-27 15:27:25 +01:00
2026-05-27 15:27:25 +01:00
2026-06-01 22:21:21 +01:00
2026-05-21 09:54:41 +01:00
2026-05-22 20:26:56 +01:00
2026-05-22 20:26:56 +01:00