Brewing in Beats: Improve Metricbeat on Windows
Welcome to Brewing in Beats! With this series, we're keeping you up to date with all that's new in Beats, from the details of work in progress pull requests to releases and learning resources.
Metricbeat: Improve Windows support
Andrew replaced the usage of Cgo with pure Go system calls in the Gosigar library, so the system module of Metricbeat no longer needs Cgo. Eliminating C is great news as it makes the code safer, easier to maintain, and easier to cross-compile.
With this change, several other things got fixed or added in the process:
- Fixed an issue where the ppid field was always 0
- Fixed an issue where populating the username failed on Windows XP
- Fixed an issue where CpuList fails on 32-bit Windows
- Make it possible to read per-CPU core times
- Fixed an issue where Metricbeat was reporting start times from 1800s
- Fixed an issue where the reading process information results in denied access
- Add support for diskio metricset for Windows XP/2003
Metricbeat: Fixes and improvements in the Docker module
Thanks to a community contribution by @douaejeouit and issue was fixed where CPU values were reported as negative. The unit test coverage was also improved.
Filebeat: Fix for state loading
Just in time for 5.0, we had a few fixes in the Filebeat code that load and interpret the registry file on startup:
- Fix state loading in case a state falls under ignore_older after restart
- Remove ERR migration log entry on startup
- Set TTL only for files which match prospector
This pull request addresses a few coding style issues in the Beats project that were detected with golint.