func GetLoad1() float64 { concreteSigar := sigar.ConcreteSigar{} avg, err := concreteSigar.GetLoadAverage() if err != nil { log.Debug("Failed to get load average") return -1 } return avg.One }
package sigar_test import ( "time" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" sigar "github.com/cloudfoundry/gosigar" ) var _ = Describe("ConcreteSigar", func() { var concreteSigar *sigar.ConcreteSigar BeforeEach(func() { concreteSigar = &sigar.ConcreteSigar{} }) Describe("CollectCPUStats", func() { It("immediately makes first CPU usage available even though it's not very accurate", func() { samplesCh, stop := concreteSigar.CollectCPUStats(500 * time.Millisecond) firstValue := <-samplesCh Expect(firstValue.User).To(BeNumerically(">", 0)) stop <- struct{}{} }) It("makes CPU usage delta values available", func() { samplesCh, stop := concreteSigar.CollectCPUStats(500 * time.Millisecond)