名称

podman-stats - 显示一个或多个容器的资源使用统计信息实时流

语法

podman stats [选项] [容器]

podman container stats [选项] [容器]

描述

显示一个或多个容器的资源使用统计信息实时流

注意:Podman stats 在使用 CGroups V1 的无根环境中不起作用。Podman stats 依赖于 CGroup 信息来进行统计,而 CGroup v1 不支持无根使用场景。

注意:使用 CGroups V2 的无根环境无法报告有关其网络使用情况的统计信息。

选项

--all, -a

显示所有容器。默认情况下,仅显示正在运行的容器

--format=模板

将容器统计信息以 JSON 格式或使用 Go 模板格式化打印

Go 模板的有效占位符如下所示

占位符

描述

.AvgCPU

平均 CPU,全精度浮点数

.AVGCPU

平均 CPU,格式化为百分比

.BlockInput

从块设备读取的总数据

.BlockIO

写入块设备的总数据量/总数据量

.BlockOutput

写入块设备的总数据

.ContainerID

容器 ID,完整(未截断)哈希值

.ContainerStats …

嵌套结构,仅供专家使用

.CPU

CPU 百分比,全精度浮点数

.CPUNano

CPU 使用率,总计,以纳秒为单位

.CPUPerc

使用的 CPU 百分比

.CPUSystemNano

CPU 使用率,内核,以纳秒为单位

.Duration

与 CPUNano 相同

.ID

容器 ID,已截断

.MemLimit

内存限制,以字节为单位

.MemPerc

使用的内存百分比

.MemUsage

内存使用量

.MemUsageBytes

内存使用量(IEC)

.Name

容器名称

.NetIO

网络 I/O

.Network …

网络 I/O,按网络接口分离

.PerCPU

所有任务消耗的 CPU 时间 [1]

.PIDs

PIDs 数量

.PIDS

PIDs 数量(是的,我们知道这是一个重复项)

.SystemNano

当前系统日期时间,自纪元以来的纳秒数

.Up

持续时间(CPUNano),以人类可读的形式

.UpTime

与 Up 相同

[1] 仅限 Cgroups V1

使用 Go 模板时,在格式前加上 table 以打印标题。

--interval, -i=

统计报告之间的间隔时间(秒),默认为 5 秒。

--latest, -l

不要提供容器名称或 ID,而是使用最后创建的容器。注意:最后启动的容器可能来自主机上其他 Podman 用户。(此选项在远程 Podman 客户端(包括 Mac 和 Windows(不包括 WSL2)机器)不可用)

--no-reset

在报告间隔之间不要清除终端/屏幕

--no-stream

禁用流式统计信息,只获取第一个结果,默认设置为 false

--no-trunc

不要截断输出

示例

列出所有正在运行的容器的统计信息,不使用流模式

# podman stats -a --no-stream
ID             NAME              CPU %   MEM USAGE / LIMIT   MEM %   NET IO    BLOCK IO   PIDS
a9f807ffaacd   frosty_hodgkin    --      3.092MB / 16.7GB    0.02%   -- / --   -- / --    2
3b33001239ee   sleepy_stallman   --      -- / --             --      -- / --   -- / --    --

在流模式下列出指定容器的统计信息

# podman stats a9f80
ID             NAME             CPU %   MEM USAGE / LIMIT   MEM %   NET IO    BLOCK IO   PIDS
a9f807ffaacd   frosty_hodgkin   --      3.092MB / 16.7GB    0.02%   -- / --   -- / --    2

以表格格式列出指定容器的指定统计信息

$ podman stats --no-trunc 3667 --format 'table {{ .ID }} {{ .MemUsage }}'
ID                                                                MEM USAGE / LIMIT
3667c6aacb06aac2eaffce914c01736420023d56ef9b0f4cfe58b6d6a78b7503  49.15kB / 67.17GB

以 JSON 格式列出指定容器的指定统计信息

# podman stats --no-stream --format=json a9f80
[
    {
	"id": "a9f807ffaacd",
	"name": "frosty_hodgkin",
	"cpu_percent": "--",
	"mem_usage": "3.092MB / 16.7GB",
	"mem_percent": "0.02%",
	"netio": "-- / --",
	"blocki": "-- / --",
	"pids": "2"
    }
]

以表格格式列出指定容器的指定统计信息

# podman stats --no-stream --format "table {{.ID}} {{.Name}} {{.MemUsage}}" 6eae
ID             NAME           MEM USAGE / LIMIT
6eae9e25a564   clever_bassi   3.031MB / 16.7GB

注意:使用 slirp4netns 网络与 rootlesskit 端口处理程序时,通过端口转发发送的流量将计入 lo 设备。计入 lo 的流量不会计入统计信息输出。

另请参阅

podman(1)

历史记录

2017 年 7 月,最初由 Ryan Cole 编写 rycole@redhat.com