From e5047e7b924da03ef4e1f46f99ba6ad1506bfb44 Mon Sep 17 00:00:00 2001 From: Daniel Berteaud Date: Thu, 29 Jun 2023 14:02:30 +0200 Subject: [PATCH] Fix + discover NMVe --- lib/Zabbix/Agent/Addons/Disks.pm | 4 ++++ zabbix_scripts/util_generate_sensors_ini | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/Zabbix/Agent/Addons/Disks.pm b/lib/Zabbix/Agent/Addons/Disks.pm index 1eaf3d2..f87901b 100644 --- a/lib/Zabbix/Agent/Addons/Disks.pm +++ b/lib/Zabbix/Agent/Addons/Disks.pm @@ -36,6 +36,10 @@ sub list_smart_hdd{ foreach my $line (@smart_info){ if ($line =~ m/^SMART support is:\s+Enabled/i){ $smart_enabled = 1; + last; + elsif ($line =~ m/NVMe/i){ + $smart_enabled = 1; + last; } elsif ($line =~ m/^Transport protocol:\s+iSCSI/i){ # Skip iSCSI block next BLOCK; diff --git a/zabbix_scripts/util_generate_sensors_ini b/zabbix_scripts/util_generate_sensors_ini index 4a4b5e2..83008d7 100755 --- a/zabbix_scripts/util_generate_sensors_ini +++ b/zabbix_scripts/util_generate_sensors_ini @@ -276,7 +276,7 @@ if ($lmsensor && -x $lmsensor){ $sensor->{description} = $name; $sensor->{type} = 'temp'; $sensor->{unit} = '°C'; - $sensor->{cmd} = "$lmsensor | perl -ne 'if (/^$name:\\s*\\+(\\d+)/) { print \"\$1\\n\"; last }'" + $sensor->{cmd} = "$lmsensor | perl -ne 'if (/^$name:\\s*\\+(\\d+)/) { print \"\$1\\n\"; last }'"; my $id = sensor_name($name); $sensors->{$id} = $sensor; print "Found a temperature sensor using lm_sensors: $name\n"; @@ -297,7 +297,7 @@ if ($smartctl && -x $smartctl){ threshold_high => $def_hd_temp_thres_high, type => 'temp', unit => '°C', - cmd => "$smartctl -A /dev/$block | perl -ne 'if (/Temperature_Celsius(\\s+[^\\s]+){7}\\s+(\\d+(\.\d+)?)/) { print \"\$2\\n\"; last }'" + cmd => "$smartctl -A /dev/$block | perl -ne 'if (/Temperature_Celsius(\\s+[^\\s]+){7}\\s+(\\d+(\\.\\d+)?)/) { print \"\$2\\n\"; last }'" }; print "Found a temperature sensor using smartctl: $block\n"; last;