@alphatan 

---
My research of this problem.

According to [this answer](https://stackoverflow.com/a/28751028/5671078) of the question "Alternate of getSystemLoadAverage() for Windows?", the method  `getSystemLoadAverage`  of java.lang.management.OperatingSystemMXBean would return `-1` in `Windows`.

It'd be suggested to use `com.sun.management.OperatingSystemMXBean` and its `getSystemCpuLoad()` and `getProcessCpuLoad()` instead.



public class LoadStatusChecker implements StatusChecker {
    @Override
    public Status check() {
        OperatingSystemMXBean operatingSystemMXBean = ManagementFactory.getOperatingSystemMXBean();
        double load;
        try {
            Method method = OperatingSystemMXBean.class.getMethod("getSystemLoadAverage", new Class<?>[0]);
            load = (Double) method.invoke(operatingSystemMXBean, new Object[0]);
        } catch (Throwable e) {
            load = -1;
        }
        int cpu = operatingSystemMXBean.getAvailableProcessors();
        return new Status(load < 0 ? Status.Level.UNKNOWN : (load < cpu ? Status.Level.OK : Status.Level.WARN),
                (load < 0 ? "" : "load:" + load + ",") + "cpu:" + cpu);
    }
}