Godep update: gopsutil
This commit is contained in:
parent
5112d077d5
commit
47258a7093
|
@ -177,38 +177,38 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/common",
|
"ImportPath": "github.com/shirou/gopsutil/common",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/cpu",
|
"ImportPath": "github.com/shirou/gopsutil/cpu",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/disk",
|
"ImportPath": "github.com/shirou/gopsutil/disk",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/docker",
|
"ImportPath": "github.com/shirou/gopsutil/docker",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/load",
|
"ImportPath": "github.com/shirou/gopsutil/load",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/mem",
|
"ImportPath": "github.com/shirou/gopsutil/mem",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/shirou/gopsutil/net",
|
"ImportPath": "github.com/shirou/gopsutil/net",
|
||||||
"Comment": "1.0.0-153-gc1313e7",
|
"Comment": "1.0.0-161-g3303647",
|
||||||
"Rev": "c1313e76341b18456212c5645d1daa7f132ac50e"
|
"Rev": "3303647209557312e5db51450ea8bbdef56d5176"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/streadway/amqp",
|
"ImportPath": "github.com/streadway/amqp",
|
||||||
|
|
|
@ -4,6 +4,7 @@ package docker
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
"path"
|
"path"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
@ -46,9 +47,13 @@ func CgroupCPU(containerid string, base string) (*cpu.CPUTimesStat, error) {
|
||||||
if len(base) == 0 {
|
if len(base) == 0 {
|
||||||
base = "/sys/fs/cgroup/cpuacct/docker"
|
base = "/sys/fs/cgroup/cpuacct/docker"
|
||||||
}
|
}
|
||||||
path := path.Join(base, containerid, "cpuacct.stat")
|
statfile := path.Join(base, containerid, "cpuacct.stat")
|
||||||
|
|
||||||
lines, err := common.ReadLines(path)
|
if _, err := os.Stat(statfile); os.IsNotExist(err) {
|
||||||
|
statfile = path.Join("/sys/fs/cgroup/cpuacct/system.slice", "docker-" + containerid + ".scope", "cpuacct.stat")
|
||||||
|
}
|
||||||
|
|
||||||
|
lines, err := common.ReadLines(statfile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -84,12 +89,17 @@ func CgroupMem(containerid string, base string) (*CgroupMemStat, error) {
|
||||||
if len(base) == 0 {
|
if len(base) == 0 {
|
||||||
base = "/sys/fs/cgroup/memory/docker"
|
base = "/sys/fs/cgroup/memory/docker"
|
||||||
}
|
}
|
||||||
path := path.Join(base, containerid, "memory.stat")
|
statfile := path.Join(base, containerid, "memory.stat")
|
||||||
|
|
||||||
|
if _, err := os.Stat(statfile); os.IsNotExist(err) {
|
||||||
|
statfile = path.Join("/sys/fs/cgroup/memory/system.slice", "docker-" + containerid + ".scope", "memory.stat")
|
||||||
|
}
|
||||||
|
|
||||||
// empty containerid means all cgroup
|
// empty containerid means all cgroup
|
||||||
if len(containerid) == 0 {
|
if len(containerid) == 0 {
|
||||||
containerid = "all"
|
containerid = "all"
|
||||||
}
|
}
|
||||||
lines, err := common.ReadLines(path)
|
lines, err := common.ReadLines(statfile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,8 @@ import (
|
||||||
func VirtualMemory() (*VirtualMemoryStat, error) {
|
func VirtualMemory() (*VirtualMemoryStat, error) {
|
||||||
filename := "/proc/meminfo"
|
filename := "/proc/meminfo"
|
||||||
lines, _ := common.ReadLines(filename)
|
lines, _ := common.ReadLines(filename)
|
||||||
|
// flag if MemAvailable is in /proc/meminfo (kernel 3.14+)
|
||||||
|
memavail := false
|
||||||
|
|
||||||
ret := &VirtualMemoryStat{}
|
ret := &VirtualMemoryStat{}
|
||||||
for _, line := range lines {
|
for _, line := range lines {
|
||||||
|
@ -33,6 +35,9 @@ func VirtualMemory() (*VirtualMemoryStat, error) {
|
||||||
ret.Total = t * 1024
|
ret.Total = t * 1024
|
||||||
case "MemFree":
|
case "MemFree":
|
||||||
ret.Free = t * 1024
|
ret.Free = t * 1024
|
||||||
|
case "MemAvailable":
|
||||||
|
memavail = true
|
||||||
|
ret.Available = t * 1024
|
||||||
case "Buffers":
|
case "Buffers":
|
||||||
ret.Buffers = t * 1024
|
ret.Buffers = t * 1024
|
||||||
case "Cached":
|
case "Cached":
|
||||||
|
@ -43,7 +48,9 @@ func VirtualMemory() (*VirtualMemoryStat, error) {
|
||||||
ret.Inactive = t * 1024
|
ret.Inactive = t * 1024
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ret.Available = ret.Free + ret.Buffers + ret.Cached
|
if !memavail {
|
||||||
|
ret.Available = ret.Free + ret.Buffers + ret.Cached
|
||||||
|
}
|
||||||
ret.Used = ret.Total - ret.Free
|
ret.Used = ret.Total - ret.Free
|
||||||
ret.UsedPercent = float64(ret.Total-ret.Available) / float64(ret.Total) * 100.0
|
ret.UsedPercent = float64(ret.Total-ret.Available) / float64(ret.Total) * 100.0
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue