diff --git a/extension-files/agent-config/zabbix_disk_discovery.conf b/extension-files/agent-config/zabbix_disk_discovery.conf
index 27ddf7b..c76eb75 100755
--- a/extension-files/agent-config/zabbix_disk_discovery.conf
+++ b/extension-files/agent-config/zabbix_disk_discovery.conf
@@ -2,5 +2,5 @@
# Add a configfile to /etc/zabbix/item_zabbix_discovery_devices.conf
UserParameter=custom.vfs.dev.discovery,/usr/bin/zabbix_discovery_devices --config /etc/zabbix/item_zabbix_discovery_devices.json
Alias=vfs.dev.discovery:custom.vfs.dev.discovery
-UserParameter=vfs.dev.discovery.detail,/usr/bin/zabbix_discovery_devices --smart --config /etc/zabbix/item_zabbix_discovery_devices.json
+UserParameter=vfs.dev.discovery.rawdisks,/usr/bin/zabbix_discovery_devices --only_rawdisk --config /etc/zabbix/item_zabbix_discovery_devices.json
UserParameter=vfs.dev.discovery.softwareraid,/usr/bin/zabbix_discovery_devices --software_raid --config /etc/zabbix/item_zabbix_discovery_devices.json
diff --git a/extension-files/agent-config/zabbix_smartmontools.conf b/extension-files/agent-config/zabbix_smartmontools.conf
index 7e68ca1..4c7e15b 100755
--- a/extension-files/agent-config/zabbix_smartmontools.conf
+++ b/extension-files/agent-config/zabbix_smartmontools.conf
@@ -1,5 +1,5 @@
# invoke /usr/bin/zabbix_discovery_devices --help to view information about configuration format
-UserParameter=vfs.dev.discovery.rawdisks,/usr/bin/zabbix_discovery_devices --config /etc/zabbix/item_zabbix_discovery_devices.json --only_rawdisk
+UserParameter=vfs.dev.discovery.smart,/usr/bin/zabbix_discovery_devices --config /etc/zabbix/item_zabbix_discovery_devices.json --only_rawdisk --smart
#
UserParameter=hardware.disk.health[*],sudo /usr/bin/zabbix_check_smartmontools --health --device "$1"
UserParameter=hardware.disk.smart.attributes[*],sudo /usr/bin/zabbix_check_smartmontools --device "$1" --attribute "$2"
diff --git a/extension-files/tools/zabbix_discovery_devices b/extension-files/tools/zabbix_discovery_devices
index 363df2c..dde28fa 100755
--- a/extension-files/tools/zabbix_discovery_devices
+++ b/extension-files/tools/zabbix_discovery_devices
@@ -150,17 +150,24 @@ parser.add_argument(
parser.add_argument(
'--software_raid',
- help='Discovery for software_raid devices',
+ help='Discovery only for software_raid devices',
action='store_true',
)
parser.add_argument(
'--only_rawdisk',
- help='Discovery for real raw/hardware devices',
+ help='Discovery only for real raw/hardware devices',
action='store_true',
)
+parser.add_argument(
+ '--no_partitions',
+ help='Exclude partitions from discovery',
+ action='store_true',
+)
+
+
parser.add_argument(
'--config',
nargs='?',
@@ -261,12 +268,19 @@ for filename in glob.glob('/sys/block/*'):
device['{#DEVTYPE}'] = "disk"
devices_discovered['data'].append(device)
-for filename in glob.glob('/sys/block/*/*/partition'):
- partition = os.path.basename(os.path.dirname(filename))
- device = {}
- device['{#DEVNAME}'] = partition
- device['{#DEVTYPE}'] = "partition"
- devices_discovered['data'].append(device)
+if args.debug:
+ sys.stderr.write("** Discover partitions\n")
+
+if args.no_partitions or args.software_raid or args.only_rawdisk:
+ if args.debug:
+ sys.stderr.write("do not add partitions to the result\n")
+else:
+ for filename in glob.glob('/sys/block/*/*/partition'):
+ partition = os.path.basename(os.path.dirname(filename))
+ device = {}
+ device['{#DEVNAME}'] = partition
+ device['{#DEVTYPE}'] = "partition"
+ devices_discovered['data'].append(device)
if args.debug:
print(json.dumps(devices_discovered, sort_keys=True, indent=2))
diff --git a/zabbix_templates/6.4/custom-os-linux-disk-io-details.xml b/zabbix_templates/6.4/custom-os-linux-disk-io-details.xml
index cc319b8..a466052 100644
--- a/zabbix_templates/6.4/custom-os-linux-disk-io-details.xml
+++ b/zabbix_templates/6.4/custom-os-linux-disk-io-details.xml
@@ -22,7 +22,7 @@
6e50927ae08242c0a136e53e23500428
Disk IO detail discovery
ZABBIX_ACTIVE
- vfs.dev.discovery.detail
+ vfs.dev.discovery.rawdisks
60m
diff --git a/zabbix_templates/6.4/custom-os-linux-hardware.xml b/zabbix_templates/6.4/custom-os-linux-hardware.xml
index 1af14ef..f8b3b16 100644
--- a/zabbix_templates/6.4/custom-os-linux-hardware.xml
+++ b/zabbix_templates/6.4/custom-os-linux-hardware.xml
@@ -23,7 +23,7 @@
841fe680e6cc4f1c9b6e7065ca044ffe
Hard Disk discovery
ZABBIX_ACTIVE
- vfs.dev.discovery.rawdisks
+ vfs.dev.discovery.smart
15m