prysm-pulse/vendor/github.com/elastic/gosigar/README.md
Preston Van Loon 84ff4c5b14 Merge pull request #23 from ethereum/master
Upstream changes from ethereum/go-ethereum

Former-commit-id: b40212f60d4e0a11e783a362886c7db8fb9c54f9 [formerly a2112a830d4047afa18c31243c2a506f80d4de12]
Former-commit-id: 4c9a4d5662038dd26bda5d3343f231795c702b02
2018-02-07 10:27:01 -05:00

2.3 KiB

Go sigar Build Status Build status

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/elastic/gosigar
$ cd $GOPATH/src/github.com/elastic/gosigar/examples/ps
$ go build
$ ./ps

Supported platforms

The features vary by operating system.

Feature Linux Darwin Windows OpenBSD FreeBSD
Cpu X X X X X
CpuList X X X X
FDUsage X X
FileSystemList X X X X X
FileSystemUsage X X X X X
LoadAverage X X X X
Mem X X X X X
ProcArgs X X X X
ProcEnv X X X
ProcExe X X X
ProcFDUsage X X
ProcList X X X X
ProcMem X X X X
ProcState X X X X
ProcTime X X X X
Swap X X X X
Uptime X X X X

OS Specific Notes

FreeBSD

Mount both linprocfs and procfs for compatability. Consider adding these mounts to your /etc/fstab file so they are mounted automatically at boot.

sudo mount -t procfs proc /proc
sudo mkdir -p /compat/linux/proc
sudo mount -t linprocfs /dev/null /compat/linux/proc

License

Apache 2.0