sigar

package module
v0.0.0-...-845272a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 20, 2012 License: Apache-2.0 Imports: 11 Imported by: 0

README

Go sigar

Overview

Go sigar is a golang implementation of the sigar API. The Go version of sigar has a very similar interface, but is being written from scratch in pure go/cgo, rather than cgo bindings for libsigar.

Test drive

$ go get github.com/cloudfoundry/gosigar
$ cd $GOPATH/src/github.com/cloudfoundry/gosigar/examples
$ go run uptime.go

Using gerrit

$ export GOPATH=~/gocode
$ mkdir -p $GOPATH/src/github.com/cloudfoundry
$ cd $GOPATH/src/github.com/cloudfoundry
$ gerrit clone ssh://[<your username>@]reviews.cloudfoundry.org:29418/gosigar.git
$ cd gosigar
$ go test

Supported platforms

Currently targeting modern flavors of darwin and linux.

License

Apache 2.0

Documentation

Index

Constants

View Source
const (
	RunStateSleep   = 'S'
	RunStateRun     = 'R'
	RunStateStop    = 'T'
	RunStateZombie  = 'Z'
	RunStateIdle    = 'D'
	RunStateUnknown = '?'
)

Variables

This section is empty.

Functions

func FormatPercent

func FormatPercent(percent float64) string

func FormatSize

func FormatSize(size uint64) string

Go version of apr_strfsize

Types

type FileSystem

type FileSystem struct {
	DirName     string
	DevName     string
	TypeName    string
	SysTypeName string
	Options     string
	Flags       uint32
}

type FileSystemList

type FileSystemList struct {
	List []FileSystem
}

func (*FileSystemList) Get

func (self *FileSystemList) Get() error

type FileSystemUsage

type FileSystemUsage struct {
	Total     uint64
	Used      uint64
	Free      uint64
	Avail     uint64
	Files     uint64
	FreeFiles uint64
}

func (*FileSystemUsage) Get

func (self *FileSystemUsage) Get(path string) error

func (*FileSystemUsage) UsePercent

func (self *FileSystemUsage) UsePercent() float64

type LoadAverage

type LoadAverage struct {
	One, Five, Fifteen float64
}

func (*LoadAverage) Get

func (self *LoadAverage) Get() error

type Mem

type Mem struct {
	Total      uint64
	Used       uint64
	Free       uint64
	ActualFree uint64
	ActualUsed uint64
}

func (*Mem) Get

func (self *Mem) Get() error

type ProcList

type ProcList struct {
	List []int
}

func (*ProcList) Get

func (self *ProcList) Get() error

type ProcMem

type ProcMem struct {
	Size        uint64
	Resident    uint64
	Share       uint64
	MinorFaults uint64
	MajorFaults uint64
	PageFaults  uint64
}

func (*ProcMem) Get

func (self *ProcMem) Get(pid int) error

type ProcState

type ProcState struct {
	Name      string
	State     RunState
	Ppid      int
	Tty       int
	Priority  int
	Nice      int
	Processor int
}

func (*ProcState) Get

func (self *ProcState) Get(pid int) error

type ProcTime

type ProcTime struct {
	StartTime uint64
	User      uint64
	Sys       uint64
	Total     uint64
}

func (*ProcTime) FormatStartTime

func (self *ProcTime) FormatStartTime() string

func (*ProcTime) FormatTotal

func (self *ProcTime) FormatTotal() string

func (*ProcTime) Get

func (self *ProcTime) Get(pid int) error

type RunState

type RunState byte

type Swap

type Swap struct {
	Total uint64
	Used  uint64
	Free  uint64
}

func (*Swap) Get

func (self *Swap) Get() error

type Uptime

type Uptime struct {
	Length float64
}

func (*Uptime) Format

func (self *Uptime) Format() string

func (*Uptime) Get

func (self *Uptime) Get() error

Directories

Path Synopsis
Go interface to the Linux netlink process connector.
Go interface to the Linux netlink process connector.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL