Files
podman/pkg/api/handlers/compat/containers_stats_freebsd.go
Mark Johnston a0238fb19f libpod: Fill out OnlineCPUs in the FreeBSD stats handler
Signed-off-by: Mark Johnston <mark.johnston@klarasystems.com>
2025-09-18 14:33:42 +00:00

43 lines
990 B
Go

//go:build !remote
package compat
import (
"time"
"github.com/containers/podman/v5/libpod"
"github.com/containers/podman/v5/libpod/define"
"github.com/docker/docker/api/types/container"
)
func getPreCPUStats(stats *define.ContainerStats) CPUStats {
return CPUStats{
CPUUsage: container.CPUUsage{
TotalUsage: stats.CPUNano,
},
CPU: stats.CPU,
OnlineCPUs: 0,
ThrottlingData: container.ThrottlingData{},
}
}
func statsContainerJSON(ctnr *libpod.Container, stats *define.ContainerStats, preCPUStats CPUStats, onlineCPUs int) (StatsJSON, error) {
return StatsJSON{
Stats: Stats{
Read: time.Now(),
CPUStats: CPUStats{
CPUUsage: container.CPUUsage{
TotalUsage: stats.CPUNano,
},
CPU: stats.CPU,
OnlineCPUs: uint32(onlineCPUs),
ThrottlingData: container.ThrottlingData{},
},
PreCPUStats: preCPUStats,
MemoryStats: container.MemoryStats{},
},
Name: stats.Name,
ID: stats.ContainerID,
}, nil
}