shirou_gopsutil/docker/docker_notlinux.go

67 lines
2.2 KiB
Go
Raw Normal View History

// +build !linux
package docker
import (
2017-12-31 14:25:49 +08:00
"context"
2018-09-21 11:18:13 +08:00
cpu "github.com/shirou/gopsutil/cpu"
"github.com/shirou/gopsutil/internal/common"
)
// GetDockerStat returns a list of Docker basic stats.
// This requires certain permission.
func GetDockerStat() ([]CgroupDockerStat, error) {
2017-12-31 14:25:49 +08:00
return GetDockerStatWithContext(context.Background())
}
func GetDockerStatWithContext(ctx context.Context) ([]CgroupDockerStat, error) {
return nil, ErrDockerNotAvailable
}
// GetDockerIDList returnes a list of DockerID.
// This requires certain permission.
func GetDockerIDList() ([]string, error) {
2017-12-31 14:25:49 +08:00
return GetDockerIDListWithContext(context.Background())
}
func GetDockerIDListWithContext(ctx context.Context) ([]string, error) {
return nil, ErrDockerNotAvailable
}
// CgroupCPU returnes 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/
2018-09-21 11:18:13 +08:00
func CgroupCPU(containerid string, base string) (*cpu.TimesStat, error) {
2017-12-31 14:25:49 +08:00
return CgroupCPUWithContext(context.Background(), containerid, base)
}
2018-09-21 11:18:13 +08:00
func CgroupCPUWithContext(ctx context.Context, containerid string, base string) (*cpu.TimesStat, error) {
return nil, ErrCgroupNotAvailable
}
2018-09-21 11:18:13 +08:00
func CgroupCPUDocker(containerid string) (*cpu.TimesStat, error) {
2017-12-31 14:25:49 +08:00
return CgroupCPUDockerWithContext(context.Background(), containerid)
}
2018-09-21 11:18:13 +08:00
func CgroupCPUDockerWithContext(ctx context.Context, containerid string) (*cpu.TimesStat, error) {
return CgroupCPU(containerid, common.HostSys("fs/cgroup/cpuacct/docker"))
}
func CgroupMem(containerid string, base string) (*CgroupMemStat, error) {
2017-12-31 14:25:49 +08:00
return CgroupMemWithContext(context.Background(), containerid, base)
}
func CgroupMemWithContext(ctx context.Context, containerid string, base string) (*CgroupMemStat, error) {
return nil, ErrCgroupNotAvailable
}
func CgroupMemDocker(containerid string) (*CgroupMemStat, error) {
2017-12-31 14:25:49 +08:00
return CgroupMemDockerWithContext(context.Background(), containerid)
}
func CgroupMemDockerWithContext(ctx context.Context, containerid string) (*CgroupMemStat, error) {
return CgroupMem(containerid, common.HostSys("fs/cgroup/memory/docker"))
}