telegraf/plugins
Daniel Nelson 9ba023fd67
[inputs/diskio] Fix how major and minor identifiers of block devices are read. (#5566)
* Fix how major and minor identifiers of block devices are read.

The current implementation assure that the major and the minor are
coded on one byte. But they are not:

```
brw-rw----  1 root disk    252, 290 Feb 25 11:36 dm-290
```

290 as minor in this example is over 1 byte.

So after wondering why all my devices iops weren't correctly stored,
I found out that several points were added for some disks. For `dm-290`
it was overriding `252:34`, instead of getting udev stats for `252:290`.

The solution is here:
https://sites.uclouvain.be/SystInfo/usr/include/sys/sysmacros.h.html

The implementation is directly taken from this, fixing my bug.

* Use unix.Major/unix.Minor instead of custom implementation

* [diskio] Force type of stat.Rdev uint64 for mipsle compatibility

For most platforms, stat.Rdev is already a uint64 so this is without any effect
for linux,mipsle, unix.Stat_t.Rdev is a uint32, but the way to compute major and minor doesn't change, casting the uint32 has no impact either
2019-03-22 14:03:48 -07:00
..
aggregators Add stats option to basicstats sample config 2019-02-01 12:27:31 -08:00
inputs [inputs/diskio] Fix how major and minor identifiers of block devices are read. (#5566) 2019-03-22 14:03:48 -07:00
outputs Fix open error handling in file output (#5540) 2019-03-22 13:59:30 -07:00
parsers Remove string trimming from grok parser (#5608) 2019-03-22 14:02:15 -07:00
processors Add hexadecimal string to integer conversion to converter processor (#5569) 2019-03-11 15:36:38 -07:00
serializers Fix several influx parser issues (#5484) 2019-02-26 10:48:41 -08:00