mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-05-22 03:02:35 +00:00
fix: prevent duplicate node names in alert IDs for single-node setups
When the instance name equals the node name (common in single-node setups), avoid generating redundant IDs like "pve-pve-100" by using just "pve-100". This fixes alert acknowledgment issues where the UI couldn't match alert IDs due to the duplicate node name pattern. Addresses #353
This commit is contained in:
parent
f34c9d689d
commit
7592c95021
1 changed files with 21 additions and 3 deletions
|
|
@ -899,7 +899,13 @@ func (m *Monitor) pollVMsAndContainersEfficient(ctx context.Context, instanceNam
|
|||
var allContainers []models.Container
|
||||
|
||||
for _, res := range resources {
|
||||
guestID := fmt.Sprintf("%s-%s-%d", instanceName, res.Node, res.VMID)
|
||||
// Avoid duplicating node name in ID when instance name equals node name
|
||||
var guestID string
|
||||
if instanceName == res.Node {
|
||||
guestID = fmt.Sprintf("%s-%d", res.Node, res.VMID)
|
||||
} else {
|
||||
guestID = fmt.Sprintf("%s-%s-%d", instanceName, res.Node, res.VMID)
|
||||
}
|
||||
|
||||
// Debug log the resource type
|
||||
log.Debug().
|
||||
|
|
@ -1267,7 +1273,13 @@ func (m *Monitor) pollVMsWithNodes(ctx context.Context, instanceName string, cli
|
|||
}
|
||||
|
||||
// Calculate I/O rates
|
||||
guestID := fmt.Sprintf("%s-%s-%d", instanceName, node.Node, vm.VMID)
|
||||
// Avoid duplicating node name in ID when instance name equals node name
|
||||
var guestID string
|
||||
if instanceName == node.Node {
|
||||
guestID = fmt.Sprintf("%s-%d", node.Node, vm.VMID)
|
||||
} else {
|
||||
guestID = fmt.Sprintf("%s-%s-%d", instanceName, node.Node, vm.VMID)
|
||||
}
|
||||
currentMetrics := IOMetrics{
|
||||
DiskRead: int64(vm.DiskRead),
|
||||
DiskWrite: int64(vm.DiskWrite),
|
||||
|
|
@ -1566,7 +1578,13 @@ func (m *Monitor) pollContainersWithNodes(ctx context.Context, instanceName stri
|
|||
}
|
||||
|
||||
// Calculate I/O rates
|
||||
guestID := fmt.Sprintf("%s-%s-%d", instanceName, node.Node, ct.VMID)
|
||||
// Avoid duplicating node name in ID when instance name equals node name
|
||||
var guestID string
|
||||
if instanceName == node.Node {
|
||||
guestID = fmt.Sprintf("%s-%d", node.Node, ct.VMID)
|
||||
} else {
|
||||
guestID = fmt.Sprintf("%s-%s-%d", instanceName, node.Node, ct.VMID)
|
||||
}
|
||||
currentMetrics := IOMetrics{
|
||||
DiskRead: int64(ct.DiskRead),
|
||||
DiskWrite: int64(ct.DiskWrite),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue