From d00a5ab56b6384c28139ac5f60aa298a960b2e45 Mon Sep 17 00:00:00 2001 From: Steve Baroti Date: Tue, 21 Jun 2022 11:04:53 -0400 Subject: [PATCH] kvm_*: improve field names fixed graph failure for VM names starting with digits used "Validate filednames" Python stanza from docs to improve clean_vm_name functions, helping graph creations for VM with names starting with digits, like "150-121-Apache". remember: each data source in a plugin must be identified by a field name (in this case VM names). The characters must be [a-zA-Z0-9_], while the first character must be [a-zA-Z_]. --- plugins/libvirt/kvm_cpu | 2 +- plugins/libvirt/kvm_io | 2 +- plugins/libvirt/kvm_mem | 2 +- plugins/libvirt/kvm_net | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/libvirt/kvm_cpu b/plugins/libvirt/kvm_cpu index 3196dc26..3f0faab7 100755 --- a/plugins/libvirt/kvm_cpu +++ b/plugins/libvirt/kvm_cpu @@ -83,7 +83,7 @@ def clean_vm_name(vm_name): return parts[parts.index('-name') + 1] except ValueError: pass - return re.sub(r"[^a-zA-Z0-9_]", "_", vm_name) + return re.sub(r"(^[^A-Za-z_]|[^A-Za-z0-9_])", "_", vm_name) def detect_kvm(): diff --git a/plugins/libvirt/kvm_io b/plugins/libvirt/kvm_io index 1b84df15..62bc6a10 100755 --- a/plugins/libvirt/kvm_io +++ b/plugins/libvirt/kvm_io @@ -82,7 +82,7 @@ def clean_vm_name(vm_name): vm_name = parts[parts.index('-name') + 1] except ValueError: pass - return re.sub(r"[^a-zA-Z0-9_]", "_", vm_name) + return re.sub(r"(^[^A-Za-z_]|[^A-Za-z0-9_])", "_", vm_name) def fetch(vms): diff --git a/plugins/libvirt/kvm_mem b/plugins/libvirt/kvm_mem index 5cdeeac1..1d405fca 100755 --- a/plugins/libvirt/kvm_mem +++ b/plugins/libvirt/kvm_mem @@ -51,8 +51,8 @@ def clean_vm_name(vm_name): return parts[parts.index('-name')+1] except ValueError: pass + return re.sub(r"(^[^A-Za-z_]|[^A-Za-z0-9_])", "_", vm_name) - return re.sub(r"[^a-zA-Z0-9_]", "_", vm_name) def fetch(vms): ''' Fetch values for a list of pids diff --git a/plugins/libvirt/kvm_net b/plugins/libvirt/kvm_net index baea8449..8e9c5205 100755 --- a/plugins/libvirt/kvm_net +++ b/plugins/libvirt/kvm_net @@ -106,7 +106,7 @@ def clean_vm_name(vm_name): return parts[parts.index('-name')+1] except ValueError: pass - return re.sub(r"[^a-zA-Z0-9_]", "_", vm_name) + return re.sub(r"(^[^A-Za-z_]|[^A-Za-z0-9_])", "_", vm_name) def fetch(vms):