func GetCpuTimes() (*CpuTimes, error) { cpu := sigar.Cpu{} err := cpu.Get() if err != nil { return nil, err } return &CpuTimes{Cpu: cpu}, nil }
func (p ubuntu) GetCpuStats() (stats CpuStats, err error) { cpu := sigar.Cpu{} err = cpu.Get() if err != nil { return } stats.User = cpu.User stats.Sys = cpu.Sys stats.Wait = cpu.Wait stats.Total = cpu.Total() return }
func (s sigarStatsCollector) GetCpuStats() (stats CpuStats, err error) { cpu := sigar.Cpu{} err = cpu.Get() if err != nil { err = bosherr.WrapError(err, "Getting Sigar Cpu") return } stats.User = cpu.User stats.Sys = cpu.Sys stats.Wait = cpu.Wait stats.Total = cpu.Total() return }
package sigar_test import ( "io/ioutil" "time" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" sigar "github.com/cloudfoundry/gosigar" ) var _ = Describe("sigarLinux", func() { Describe("CPU", func() { var ( statFile string cpu sigar.Cpu ) BeforeEach(func() { procd, err := ioutil.TempDir("", "sigarTests") Expect(err).ToNot(HaveOccurred()) sigar.Procd = procd statFile = procd + "/stat" cpu = sigar.Cpu{} statContents := []byte("cpu 25 1 2 3 4 5 6 7") err = ioutil.WriteFile(statFile, statContents, 0644) Expect(err).ToNot(HaveOccurred()) })
var procd string BeforeEach(func() { var err error procd, err = ioutil.TempDir("", "sigarTests") Expect(err).ToNot(HaveOccurred()) sigar.Procd = procd }) AfterEach(func() { sigar.Procd = "/proc" }) Describe("CPU", func() { var ( statFile string cpu sigar.Cpu ) BeforeEach(func() { statFile = procd + "/stat" cpu = sigar.Cpu{} }) Describe("Get", func() { It("gets CPU usage", func() { statContents := []byte("cpu 25 1 2 3 4 5 6 7") err := ioutil.WriteFile(statFile, statContents, 0644) Expect(err).ToNot(HaveOccurred()) err = cpu.Get() Expect(err).ToNot(HaveOccurred())