Fix QEMU process discovery when binary is replaced on disk
Linux appends " (deleted)" to /proc/{pid}/exe when the binary has been
replaced (common after PVE/QEMU package upgrades while VMs remain
running). The exact string match rejected all running QEMU processes,
resulting in zero VM metrics.
This commit is contained in:
@@ -103,7 +103,7 @@ func (r *RealProcReader) DiscoverQEMUProcesses() ([]QEMUProcess, error) {
|
||||
logging.Trace("proc readlink failed", "pid", pid, "err", err)
|
||||
continue
|
||||
}
|
||||
if exe != "/usr/bin/qemu-system-x86_64" {
|
||||
if exe != "/usr/bin/qemu-system-x86_64" && exe != "/usr/bin/qemu-system-x86_64 (deleted)" {
|
||||
logging.Trace("proc exe skip", "pid", pid, "exe", exe)
|
||||
continue
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user