-
Incident report
-
Resolution: Unresolved
-
Minor
-
None
-
5.0.7, 5.2.2
-
None
-
Windows Server 2016
Windows Server 2019
Steps to reproduce:
- No special configuration required
- Query zabbix agent with a WMI value likeĀ
wmi.get[root\cimv2,select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name='_Total']
Result:
Values are unreliable:
2020-12-22 01:09:00 | 15584045 |
2020-12-22 01:08:00 | 14744837 |
2020-12-22 01:07:00 | 13824107 |
2020-12-22 01:06:00 | 12601199 |
2020-12-22 01:05:00 | 18446744073694678941 |
2020-12-22 01:04:00 | 18446744073693237047 |
2020-12-22 01:03:00 | 18446744073671703488 |
2020-12-22 01:02:10 | 18446744073671267304 |
2020-12-22 01:01:00 | 18446744073667840523 |
2020-12-22 01:00:00 | 18446744073648979239 |
...
2020-12-21 18:14:00 | 18446744071565508350 |
2020-12-21 18:13:00 | 18446744071563709666 |
2020-12-21 18:12:00 | 18446744071563225384 |
2020-12-21 18:11:00 | 2147280336 |
2020-12-21 18:10:00 | 2147275532 |
2020-12-21 18:09:00 | 2146821900 |
2020-12-21 18:08:00 | 2146369424 |
2020-12-21 18:07:00 | 2145678572 |
Error state can be reproduced on a system:
.\zabbix_agentd.exe -t "wmi.get[root\cimv2,select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name LIKE '%VD%']" wmi.get[root\cimv2,select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name='C:\\mount\\Tank-VD-0'] [u|18446744073578909317]
Running wmi query directly (shortly after):
gwmi -Query "select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name LIKE '%VD%'"
AvgDisksecPerRead : 4001443676
Same system - 30min later:
.\zabbix_agentd.exe -t "wmi.get[root\cimv2,select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name LIKE '%VD%']" wmi.get[root\cimv2,select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name='C:\\mount\\Tank-VD-0'] [u|82629443]
Running wmi query directly (shortly after):
gwmi -Query "select AvgDisksecPerRead from Win32_PerfRawData_PerfDisk_Logicaldisk WHERE Name LIKE '%VD%'"
AvgDisksecPerRead : 82668265
There's no real starting point here - it just occurs "sometimes".
The only thing i've noticed so far is that only values reaching the limit of (signed) int32 range (2147483647) seem to disappear (values are increasing due the nature of the measured value) and then the error occurs. There's just no explanation why the value sometimes decreases again.
Expectation would be that the values are returned correctly (as the native WMI query does).