github.com/elastic/gosigar@v0.14.3/sigar_darwin_386.go (about) 1 package gosigar 2 3 import ( 4 "syscall" 5 "time" 6 ) 7 8 func (self *Uptime) Get() error { 9 tv := syscall.Timeval{} 10 11 if err := sysctlbyname("kern.boottime", &tv); err != nil { 12 return err 13 } 14 15 self.Length = time.Since(time.Unix(int64(tv.Sec), int64(tv.Usec)*1000)).Seconds() 16 17 return nil 18 }