Documentation ¶
Index ¶
- Variables
- func CgroupCPUDockerUsageWithContext(ctx context.Context, containerid string) (float64, error)
- func CgroupCPUUsage(containerID string, base string) (float64, error)
- func CgroupCPUUsageDocker(containerid string) (float64, error)
- func CgroupCPUUsageWithContext(ctx context.Context, containerID, base string) (float64, error)
- func GetDockerIDList() ([]string, error)
- func GetDockerIDListWithContext(ctx context.Context) ([]string, error)
- type CgroupCPUStat
- func CgroupCPU(containerID string, base string) (*CgroupCPUStat, error)
- func CgroupCPUDocker(containerid string) (*CgroupCPUStat, error)
- func CgroupCPUDockerWithContext(ctx context.Context, containerid string) (*CgroupCPUStat, error)
- func CgroupCPUWithContext(ctx context.Context, containerID string, base string) (*CgroupCPUStat, error)
- type CgroupDockerStat
- type CgroupMemStat
- func CgroupMem(containerID string, base string) (*CgroupMemStat, error)
- func CgroupMemDocker(containerID string) (*CgroupMemStat, error)
- func CgroupMemDockerWithContext(ctx context.Context, containerID string) (*CgroupMemStat, error)
- func CgroupMemWithContext(ctx context.Context, containerID string, base string) (*CgroupMemStat, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrDockerNotAvailable = errors.New("docker not available") ErrCgroupNotAvailable = errors.New("cgroup not available") )
Functions ¶
func CgroupCPUUsage ¶
CgroupCPUUsage returns specified cgroup id CPU usage. containerID is same as docker id if you use docker. If you use container via systemd.slice, you could use containerID = docker-<container id>.scope and base=/sys/fs/cgroup/cpuacct/system.slice/
func CgroupCPUUsageDocker ¶
func GetDockerIDList ¶
GetDockerIDList returns a list of DockerID. This requires certain permission.
Types ¶
type CgroupCPUStat ¶
func CgroupCPU ¶
func CgroupCPU(containerID string, base string) (*CgroupCPUStat, error)
CgroupCPU returns specified cgroup id CPU status. containerID is same as docker id if you use docker. If you use container via systemd.slice, you could use containerID = docker-<container id>.scope and base=/sys/fs/cgroup/cpuacct/system.slice/
func CgroupCPUDocker ¶
func CgroupCPUDocker(containerid string) (*CgroupCPUStat, error)
func CgroupCPUDockerWithContext ¶
func CgroupCPUDockerWithContext(ctx context.Context, containerid string) (*CgroupCPUStat, error)
func CgroupCPUWithContext ¶
type CgroupDockerStat ¶
type CgroupDockerStat struct { ContainerID string `json:"containerID"` Name string `json:"name"` Image string `json:"image"` Status string `json:"status"` Running bool `json:"running"` }
func GetDockerStat ¶
func GetDockerStat() ([]CgroupDockerStat, error)
GetDockerStat returns a list of Docker basic stats. This requires certain permission.
func GetDockerStatWithContext ¶
func GetDockerStatWithContext(ctx context.Context) ([]CgroupDockerStat, error)
func (CgroupDockerStat) String ¶
func (c CgroupDockerStat) String() string
type CgroupMemStat ¶
type CgroupMemStat struct { ContainerID string `json:"containerID"` Cache uint64 `json:"cache"` RSS uint64 `json:"rss"` RSSHuge uint64 `json:"rssHuge"` MappedFile uint64 `json:"mappedFile"` Pgpgin uint64 `json:"pgpgin"` Pgpgout uint64 `json:"pgpgout"` Pgfault uint64 `json:"pgfault"` Pgmajfault uint64 `json:"pgmajfault"` InactiveAnon uint64 `json:"inactiveAnon"` ActiveAnon uint64 `json:"activeAnon"` InactiveFile uint64 `json:"inactiveFile"` ActiveFile uint64 `json:"activeFile"` Unevictable uint64 `json:"unevictable"` HierarchicalMemoryLimit uint64 `json:"hierarchicalMemoryLimit"` TotalCache uint64 `json:"totalCache"` TotalRSS uint64 `json:"totalRss"` TotalRSSHuge uint64 `json:"totalRssHuge"` TotalMappedFile uint64 `json:"totalMappedFile"` TotalPgpgIn uint64 `json:"totalPgpgin"` TotalPgpgOut uint64 `json:"totalPgpgout"` TotalPgFault uint64 `json:"totalPgfault"` TotalPgMajFault uint64 `json:"totalPgmajfault"` TotalInactiveAnon uint64 `json:"totalInactiveAnon"` TotalActiveAnon uint64 `json:"totalActiveAnon"` TotalInactiveFile uint64 `json:"totalInactiveFile"` TotalActiveFile uint64 `json:"totalActiveFile"` TotalUnevictable uint64 `json:"totalUnevictable"` MemUsageInBytes uint64 `json:"memUsageInBytes"` MemMaxUsageInBytes uint64 `json:"memMaxUsageInBytes"` MemLimitInBytes uint64 `json:"memoryLimitInBytes"` MemFailCnt uint64 `json:"memoryFailcnt"` }
func CgroupMemDocker ¶
func CgroupMemDocker(containerID string) (*CgroupMemStat, error)
func CgroupMemDockerWithContext ¶
func CgroupMemDockerWithContext(ctx context.Context, containerID string) (*CgroupMemStat, error)
func CgroupMemWithContext ¶
func (CgroupMemStat) String ¶
func (m CgroupMemStat) String() string
Click to show internal directories.
Click to hide internal directories.