Added reset before collecting new metrics to prevent dangling metrics

This commit is contained in:
Jan Lošťák
2025-02-22 19:28:37 +01:00
parent 2b385fbade
commit 2ed310eef7
8 changed files with 73 additions and 0 deletions

View File

@@ -228,6 +228,24 @@ func (c *PveVirtualMachineCollector) CollectMetrics() error {
return err
}
c.state.Reset()
c.cpu.Reset()
c.memBytes.Reset()
c.diskMax.Reset()
c.uptime.Reset()
c.cpuUsage.Reset()
c.memBytesUsed.Reset()
c.netReceive.Reset()
c.netTransmit.Reset()
c.diskReadOps.Reset()
c.diskWriteOps.Reset()
c.diskReadBytes.Reset()
c.diskWriteBytes.Reset()
c.diskFailedReadOps.Reset()
c.diskFailedWriteOps.Reset()
c.diskReadTimeNs.Reset()
c.diskWriteTimeNs.Reset()
for _, node := range cluster.NodeStatuses {
qemus, err := c.apiClient.GetNodeQemuList(node.Name)
if err != nil {