gopsutil.v1: gopkg.in/shirou/gopsutil.v1/process Index | Files

package process

import "gopkg.in/shirou/gopsutil.v1/process"

Index

Package Files

process.go process_linux.go process_linux_amd64.go process_posix.go

Constants

const (
    ClockTicks = 100  // C.sysconf(C._SC_CLK_TCK)
    PageSize   = 4096 // C.sysconf(C._SC_PAGE_SIZE)
)
const (
    PrioProcess = 0 // linux/resource.h
)

Variables

var ErrorNoChildren = errors.New("process does not have children")

func PidExists Uses

func PidExists(pid int32) (bool, error)

func Pids Uses

func Pids() ([]int32, error)

type IOCountersStat Uses

type IOCountersStat struct {
    ReadCount  uint64 `json:"read_count"`
    WriteCount uint64 `json:"write_count"`
    ReadBytes  uint64 `json:"read_bytes"`
    WriteBytes uint64 `json:"write_bytes"`
}

func (IOCountersStat) String Uses

func (i IOCountersStat) String() string

type MemoryInfoExStat Uses

type MemoryInfoExStat struct {
    RSS    uint64 `json:"rss"`    // bytes
    VMS    uint64 `json:"vms"`    // bytes
    Shared uint64 `json:"shared"` // bytes
    Text   uint64 `json:"text"`   // bytes
    Lib    uint64 `json:"lib"`    // bytes
    Data   uint64 `json:"data"`   // bytes
    Dirty  uint64 `json:"dirty"`  // bytes
}

MemoryInfoExStat is different between OSes

func (MemoryInfoExStat) String Uses

func (m MemoryInfoExStat) String() string

type MemoryInfoStat Uses

type MemoryInfoStat struct {
    RSS  uint64 `json:"rss"`  // bytes
    VMS  uint64 `json:"vms"`  // bytes
    Swap uint64 `json:"swap"` // bytes
}

func (MemoryInfoStat) String Uses

func (m MemoryInfoStat) String() string

type MemoryMapsStat Uses

type MemoryMapsStat struct {
    Path         string `json:"path"`
    Rss          uint64 `json:"rss"`
    Size         uint64 `json:"size"`
    Pss          uint64 `json:"pss"`
    SharedClean  uint64 `json:"shared_clean"`
    SharedDirty  uint64 `json:"shared_dirty"`
    PrivateClean uint64 `json:"private_clean"`
    PrivateDirty uint64 `json:"private_dirty"`
    Referenced   uint64 `json:"referenced"`
    Anonymous    uint64 `json:"anonymous"`
    Swap         uint64 `json:"swap"`
}

func (MemoryMapsStat) String Uses

func (m MemoryMapsStat) String() string

type NumCtxSwitchesStat Uses

type NumCtxSwitchesStat struct {
    Voluntary   int64 `json:"voluntary"`
    Involuntary int64 `json:"involuntary"`
}

func (NumCtxSwitchesStat) String Uses

func (p NumCtxSwitchesStat) String() string

type OpenFilesStat Uses

type OpenFilesStat struct {
    Path string `json:"path"`
    Fd   uint64 `json:"fd"`
}

func (OpenFilesStat) String Uses

func (o OpenFilesStat) String() string

type Process Uses

type Process struct {
    Pid int32 `json:"pid"`
    // contains filtered or unexported fields
}

func NewProcess Uses

func NewProcess(pid int32) (*Process, error)

NewProcess creates a new Process instance, it only stores the pid and checks that the process exists. Other method on Process can be used to get more information about the process. An error will be returned if the process does not exist.

func (*Process) CPUAffinity Uses

func (p *Process) CPUAffinity() ([]int32, error)

func (*Process) CPUPercent Uses

func (p *Process) CPUPercent(interval time.Duration) (float64, error)

If interval is 0, return difference from last call(non-blocking). If interval > 0, wait interval sec and return diffrence between start and end.

func (*Process) CPUTimes Uses

func (p *Process) CPUTimes() (*cpu.CPUTimesStat, error)

func (*Process) Children Uses

func (p *Process) Children() ([]*Process, error)

func (*Process) Cmdline Uses

func (p *Process) Cmdline() (string, error)

Cmdline returns the command line arguments of the process as a string with each argument separated by 0x20 ascii character.

func (*Process) CmdlineSlice Uses

func (p *Process) CmdlineSlice() ([]string, error)

CmdlineSlice returns the command line arguments of the process as a slice with each element being an argument.

func (*Process) Connections Uses

func (p *Process) Connections() ([]net.NetConnectionStat, error)

func (*Process) CreateTime Uses

func (p *Process) CreateTime() (int64, error)

func (*Process) Cwd Uses

func (p *Process) Cwd() (string, error)

func (*Process) Exe Uses

func (p *Process) Exe() (string, error)

func (*Process) Gids Uses

func (p *Process) Gids() ([]int32, error)

func (*Process) IOCounters Uses

func (p *Process) IOCounters() (*IOCountersStat, error)

func (*Process) IOnice Uses

func (p *Process) IOnice() (int32, error)

func (*Process) IsRunning Uses

func (p *Process) IsRunning() (bool, error)

func (*Process) Kill Uses

func (p *Process) Kill() error

func (*Process) MemoryInfo Uses

func (p *Process) MemoryInfo() (*MemoryInfoStat, error)

func (*Process) MemoryInfoEx Uses

func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error)

func (*Process) MemoryMaps Uses

func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error)

MemoryMaps get memory maps from /proc/(pid)/smaps

func (*Process) MemoryPercent Uses

func (p *Process) MemoryPercent() (float32, error)

MemoryPercent returns how many percent of the total RAM this process uses

func (*Process) Name Uses

func (p *Process) Name() (string, error)

func (*Process) NetIOCounters Uses

func (p *Process) NetIOCounters(pernic bool) ([]net.NetIOCountersStat, error)

func (*Process) Nice Uses

func (p *Process) Nice() (int32, error)

func (*Process) NumCtxSwitches Uses

func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error)

func (*Process) NumFDs Uses

func (p *Process) NumFDs() (int32, error)

func (*Process) NumThreads Uses

func (p *Process) NumThreads() (int32, error)

func (*Process) OpenFiles Uses

func (p *Process) OpenFiles() ([]OpenFilesStat, error)

func (*Process) Parent Uses

func (p *Process) Parent() (*Process, error)

func (*Process) Ppid Uses

func (p *Process) Ppid() (int32, error)

func (*Process) Resume Uses

func (p *Process) Resume() error

func (*Process) Rlimit Uses

func (p *Process) Rlimit() ([]RlimitStat, error)

func (*Process) SendSignal Uses

func (p *Process) SendSignal(sig syscall.Signal) error

func (*Process) Status Uses

func (p *Process) Status() (string, error)

func (Process) String Uses

func (p Process) String() string

func (*Process) Suspend Uses

func (p *Process) Suspend() error

func (*Process) Terminal Uses

func (p *Process) Terminal() (string, error)

func (*Process) Terminate Uses

func (p *Process) Terminate() error

func (*Process) Threads Uses

func (p *Process) Threads() (map[string]string, error)

func (*Process) Uids Uses

func (p *Process) Uids() ([]int32, error)

func (*Process) Username Uses

func (p *Process) Username() (string, error)

type RlimitStat Uses

type RlimitStat struct {
    Resource int32 `json:"resource"`
    Soft     int32 `json:"soft"`
    Hard     int32 `json:"hard"`
}

func (RlimitStat) String Uses

func (r RlimitStat) String() string

Package process imports 19 packages (graph). Updated 2016-07-18. Refresh now. Tools for package owners.