Align metric names with Prometheus naming conventions
Use base units, export cumulative values as _total counters, update docs, dashboards and rules.
This commit is contained in:
@@ -26,20 +26,20 @@ type PveVirtualMachineCollector struct {
|
||||
diskMax *TTLGaugeVec // Virtual machine disk size in bytes prometheus gauge.
|
||||
swap *TTLGaugeVec // Virtual machine swap usage in bytes prometheus gauge.
|
||||
|
||||
netReceive *TTLGaugeVec // Virtual machine network receive in bytes prometheus gauge.
|
||||
netTransmit *TTLGaugeVec // Virtual machine network transmit in bytes prometheus gauge.
|
||||
netReceive *TTLCounterVec // Virtual machine received network traffic in bytes prometheus counter.
|
||||
netTransmit *TTLCounterVec // Virtual machine transmitted network traffic in bytes prometheus counter.
|
||||
|
||||
diskReadOps *TTLGaugeVec // Virtual machine disk read ops prometheus gauge.
|
||||
diskWriteOps *TTLGaugeVec // Virtual machine disk write ops prometheus gauge.
|
||||
diskReadOps *TTLCounterVec // Virtual machine disk read operations prometheus counter.
|
||||
diskWriteOps *TTLCounterVec // Virtual machine disk write operations prometheus counter.
|
||||
|
||||
diskReadBytes *TTLGaugeVec // Virtual machine disk read bytes prometheus gauge.
|
||||
diskWriteBytes *TTLGaugeVec // Virtual machine disk write bytes prometheus gauge.
|
||||
diskReadBytes *TTLCounterVec // Virtual machine disk read bytes prometheus counter.
|
||||
diskWriteBytes *TTLCounterVec // Virtual machine disk written bytes prometheus counter.
|
||||
|
||||
diskReadTimeNs *TTLGaugeVec // Virtual machine disk read time total prometheus gauge.
|
||||
diskWriteTimeNs *TTLGaugeVec // Virtual machine disk write time total prometheus gauge.
|
||||
diskReadTime *TTLCounterVec // Virtual machine disk read time total in seconds prometheus counter.
|
||||
diskWriteTime *TTLCounterVec // Virtual machine disk write time total in seconds prometheus counter.
|
||||
|
||||
diskFailedReadOps *TTLGaugeVec // Virtual machine disk failed read ops prometheus gauge.
|
||||
diskFailedWriteOps *TTLGaugeVec // Virtual machine disk failed write ops prometheus gauge.
|
||||
diskFailedReadOps *TTLCounterVec // Virtual machine failed disk read operations prometheus counter.
|
||||
diskFailedWriteOps *TTLCounterVec // Virtual machine failed disk write operations prometheus counter.
|
||||
|
||||
agent *TTLGaugeVec // Virtual machine agent enabled prometheus gauge.
|
||||
}
|
||||
@@ -63,8 +63,8 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
// Virtual machine uptime.
|
||||
c.uptime = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_uptime",
|
||||
Help: "Virtual machine uptime.",
|
||||
Name: "pve_vm_uptime_seconds",
|
||||
Help: "Virtual machine uptime in seconds.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name"},
|
||||
5*time.Minute,
|
||||
@@ -85,7 +85,7 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
// Virtual machine CPU count.
|
||||
c.cpu = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_cpu_count",
|
||||
Name: "pve_vm_cpus",
|
||||
Help: "Virtual machine CPU count.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name"},
|
||||
@@ -96,8 +96,8 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
// Virtual machine CPU usage.
|
||||
c.cpuUsage = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_cpu_usage",
|
||||
Help: "Virtual machine CPU usage.",
|
||||
Name: "pve_vm_cpu_usage_ratio",
|
||||
Help: "Virtual machine CPU usage ratio (0-1).",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name"},
|
||||
5*time.Minute,
|
||||
@@ -107,7 +107,7 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
// Virtual machine memory total.
|
||||
c.memBytes = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_mem_total_bytes",
|
||||
Name: "pve_vm_memory_total_bytes",
|
||||
Help: "Virtual machine total memory in bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name"},
|
||||
@@ -118,7 +118,7 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
// Virtual machine memory usage.
|
||||
c.memBytesUsed = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_mem_used_bytes",
|
||||
Name: "pve_vm_memory_used_bytes",
|
||||
Help: "Virtual machine used memory in bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name"},
|
||||
@@ -129,8 +129,8 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
// Virtual machine disk size.
|
||||
c.disk = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_usage_bytes",
|
||||
Help: "Virtual machine disk read bytes.",
|
||||
Name: "pve_vm_disk_used_bytes",
|
||||
Help: "Virtual machine used disk space in bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name"},
|
||||
5*time.Minute,
|
||||
@@ -149,10 +149,10 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.diskMax)
|
||||
|
||||
// Virtual machine network receive bytes.
|
||||
c.netReceive = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_network_in_bytes",
|
||||
Help: "Virtual machine network receive in bytes.",
|
||||
c.netReceive = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_network_receive_bytes_total",
|
||||
Help: "Virtual machine received network traffic in bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "interface"},
|
||||
5*time.Minute,
|
||||
@@ -160,10 +160,10 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.netReceive)
|
||||
|
||||
// Virtual machine network transmit bytes.
|
||||
c.netTransmit = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_network_out_bytes",
|
||||
Help: "Virtual machine network transmit in bytes.",
|
||||
c.netTransmit = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_network_transmit_bytes_total",
|
||||
Help: "Virtual machine transmitted network traffic in bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "interface"},
|
||||
5*time.Minute,
|
||||
@@ -171,10 +171,10 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.netTransmit)
|
||||
|
||||
// Virtual machine disk read ops.
|
||||
c.diskReadOps = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_rd_operations",
|
||||
Help: "Virtual machine disk read ops.",
|
||||
c.diskReadOps = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_read_operations_total",
|
||||
Help: "Virtual machine disk read operations.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
5*time.Minute,
|
||||
@@ -182,10 +182,10 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.diskReadOps)
|
||||
|
||||
// Virtual machine disk write ops.
|
||||
c.diskWriteOps = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_wr_operations",
|
||||
Help: "Virtual machine disk write ops.",
|
||||
c.diskWriteOps = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_write_operations_total",
|
||||
Help: "Virtual machine disk write operations.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
5*time.Minute,
|
||||
@@ -193,9 +193,9 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.diskWriteOps)
|
||||
|
||||
// Virtual machine disk read bytes.
|
||||
c.diskReadBytes = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_rd_bytes",
|
||||
c.diskReadBytes = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_read_bytes_total",
|
||||
Help: "Virtual machine disk read bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
@@ -204,9 +204,9 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.diskReadBytes)
|
||||
|
||||
// Virtual machine disk write bytes.
|
||||
c.diskWriteBytes = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_wr_bytes",
|
||||
c.diskWriteBytes = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_write_bytes_total",
|
||||
Help: "Virtual machine disk write bytes.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
@@ -215,10 +215,10 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.diskWriteBytes)
|
||||
|
||||
// Virtual machine failed disk read ops.
|
||||
c.diskFailedReadOps = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_failed_rd_ops",
|
||||
Help: "Virtual machine failed disk read ops.",
|
||||
c.diskFailedReadOps = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_failed_read_operations_total",
|
||||
Help: "Virtual machine failed disk read operations.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
5*time.Minute,
|
||||
@@ -226,37 +226,37 @@ func NewPveVirtualMachineCollector(apiClient *proxmox.PveApiClient, registry *TT
|
||||
c.registry.Register(c.diskFailedReadOps)
|
||||
|
||||
// Virtual machine failed disk write ops.
|
||||
c.diskFailedWriteOps = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_failed_wr_ops",
|
||||
Help: "Virtual machine failed disk write ops.",
|
||||
c.diskFailedWriteOps = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_failed_write_operations_total",
|
||||
Help: "Virtual machine failed disk write operations.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
5*time.Minute,
|
||||
)
|
||||
c.registry.Register(c.diskFailedWriteOps)
|
||||
|
||||
// Virtual machine disk read time total nanoseconds.
|
||||
c.diskReadTimeNs = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_rd_time_total_ns",
|
||||
Help: "Virtual machine disk read time total in nanoseconds.",
|
||||
// Virtual machine disk read time total seconds.
|
||||
c.diskReadTime = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_read_time_seconds_total",
|
||||
Help: "Virtual machine disk read time total in seconds.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
5*time.Minute,
|
||||
)
|
||||
c.registry.Register(c.diskReadTimeNs)
|
||||
c.registry.Register(c.diskReadTime)
|
||||
|
||||
// Virtual machine disk write time total nanoseconds.
|
||||
c.diskWriteTimeNs = NewTTLGaugeVec(
|
||||
prometheus.GaugeOpts{
|
||||
Name: "pve_vm_disk_wr_time_total_ns",
|
||||
Help: "Virtual machine disk write time total in nanoseconds.",
|
||||
// Virtual machine disk write time total seconds.
|
||||
c.diskWriteTime = NewTTLCounterVec(
|
||||
prometheus.CounterOpts{
|
||||
Name: "pve_vm_disk_write_time_seconds_total",
|
||||
Help: "Virtual machine disk write time total in seconds.",
|
||||
},
|
||||
[]string{"cluster", "node", "vmid", "name", "device"},
|
||||
5*time.Minute,
|
||||
)
|
||||
c.registry.Register(c.diskWriteTimeNs)
|
||||
c.registry.Register(c.diskWriteTime)
|
||||
|
||||
return &c
|
||||
}
|
||||
@@ -336,8 +336,8 @@ func (c *PveVirtualMachineCollector) CollectMetrics() error {
|
||||
c.diskFailedReadOps.With(labels).Set(float64(value.FailedRdOperations))
|
||||
c.diskFailedWriteOps.With(labels).Set(float64(value.FailedWrOperations))
|
||||
|
||||
c.diskReadTimeNs.With(labels).Set(float64(value.RdTotalTimeNs))
|
||||
c.diskWriteTimeNs.With(labels).Set(float64(value.WrTotalTimeNs))
|
||||
c.diskReadTime.With(labels).Set(float64(value.RdTotalTimeNs) / float64(time.Second))
|
||||
c.diskWriteTime.With(labels).Set(float64(value.WrTotalTimeNs) / float64(time.Second))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user