diff --git a/collector/loadavg_solaris.go b/collector/loadavg_solaris.go index f9192aa0..bf428d8a 100644 --- a/collector/loadavg_solaris.go +++ b/collector/loadavg_solaris.go @@ -32,8 +32,8 @@ import "C" func getLoad() ([]float64, error) { var loadavg [3]C.double samples := C.getloadavg(&loadavg[0], 3) - if samples > 0 { - return []float64{float64(loadavg[0]), float64(loadavg[1]), float64(loadavg[2])}, nil + if samples != 3 { + return nil, errors.New("failed to get load average") } - return nil, errors.New("failed to get load average") + return []float64{float64(loadavg[0]), float64(loadavg[1]), float64(loadavg[2])}, nil } diff --git a/collector/loadavg_unix.go b/collector/loadavg_unix.go index df6d652e..4d658852 100644 --- a/collector/loadavg_unix.go +++ b/collector/loadavg_unix.go @@ -26,8 +26,8 @@ import "C" func getLoad() ([]float64, error) { var loadavg [3]C.double samples := C.getloadavg(&loadavg[0], 3) - if samples > 0 { - return []float64{float64(loadavg[0]), float64(loadavg[1]), float64(loadavg[2])}, nil + if samples != 3 { + return nil, errors.New("failed to get load average") } - return nil, errors.New("failed to get load average") + return []float64{float64(loadavg[0]), float64(loadavg[1]), float64(loadavg[2])}, nil }