summaryrefslogtreecommitdiff
path: root/libpod
diff options
context:
space:
mode:
authorGiuseppe Scrivano <gscrivan@redhat.com>2020-02-11 19:48:23 +0100
committerGiuseppe Scrivano <gscrivan@redhat.com>2020-02-11 22:24:14 +0100
commit6215e1bb218a86c217a66e34f2abd043feca8582 (patch)
tree9212cebe74e4385685ea2d496a73b11418102205 /libpod
parent4bdfeed5bf9c467c8ab53b392747ec722505b179 (diff)
downloadpodman-6215e1bb218a86c217a66e34f2abd043feca8582.tar.gz
podman-6215e1bb218a86c217a66e34f2abd043feca8582.tar.bz2
podman-6215e1bb218a86c217a66e34f2abd043feca8582.zip
api: fix the CPU stats reported
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Diffstat (limited to 'libpod')
-rw-r--r--libpod/stats.go2
-rw-r--r--libpod/stats_config.go28
2 files changed, 17 insertions, 13 deletions
diff --git a/libpod/stats.go b/libpod/stats.go
index 3b5e0958c..6f42afd18 100644
--- a/libpod/stats.go
+++ b/libpod/stats.go
@@ -66,7 +66,9 @@ func (c *Container) GetContainerStats(previousStats *ContainerStats) (*Container
}
stats.BlockInput, stats.BlockOutput = calculateBlockIO(cgroupStats)
stats.CPUNano = cgroupStats.CPU.Usage.Total
+ stats.CPUSystemNano = cgroupStats.CPU.Usage.Kernel
stats.SystemNano = now
+ stats.PerCPU = cgroupStats.CPU.Usage.PerCPU
// Handle case where the container is not in a network namespace
if netStats != nil {
stats.NetInput = netStats.TxBytes
diff --git a/libpod/stats_config.go b/libpod/stats_config.go
index 9c7d97298..91d3d1493 100644
--- a/libpod/stats_config.go
+++ b/libpod/stats_config.go
@@ -2,17 +2,19 @@ package libpod
// ContainerStats contains the statistics information for a running container
type ContainerStats struct {
- ContainerID string
- Name string
- CPU float64
- CPUNano uint64
- SystemNano uint64
- MemUsage uint64
- MemLimit uint64
- MemPerc float64
- NetInput uint64
- NetOutput uint64
- BlockInput uint64
- BlockOutput uint64
- PIDs uint64
+ ContainerID string
+ Name string
+ PerCPU []uint64
+ CPU float64
+ CPUNano uint64
+ CPUSystemNano uint64
+ SystemNano uint64
+ MemUsage uint64
+ MemLimit uint64
+ MemPerc float64
+ NetInput uint64
+ NetOutput uint64
+ BlockInput uint64
+ BlockOutput uint64
+ PIDs uint64
}