dd-agent
dd-agent copied to clipboard
Disk I/O (system.io) metrics empty if locale != en_US
Datadog only parses the output of iostat correctly if a dot (.) is used as decimal separator. It fails to parse the iostat output if a comma (,) is used as decimal separator. This happens for example when the environment variable LC_NUMERIC is set to de_DE (instead of en_US).
The cause of this bug is that the value_re regex only supports dots as decimal separator: https://github.com/DataDog/dd-agent/blob/master/checks/system/unix.py#L27
I think the best solution would be to ensure that LC_NUMERIC is set to en_US before calling iostat. Or maybe at least log a warning if a different locale is used?