代码:
import docker
cli = docker.from_env()
print(cli.containers.get('container1').stats(stream=False)['precpu_stats'])
输出:
{'cpu_usage': {'total_usage': 6121320874, 'percpu_usage': [4662552384, 1458768490], 'usage_in_kernelmode': 970000000, 'usage_in_usermode': 4940000000}, 'system_cpu_usage': 24545140000000, 'online_cpus': 2, 'throttling_data': {'periods': 0, 'throttled_periods': 0, 'throttled_time': 0}}
我如何从这些信息中得到CPU使用率百分比?我在终端上使用了docker stats
命令,得到了0.11%的CPU使用率。但是我无法从这些信息中得到0.11%。
2条答案
按热度按时间cpjpxq1n1#
最后我得到了答案,它的方式是有点长...
输出为:
现在为了得到百分比,我们必须这样做:
mzaanser2#
https://gist.github.com/mdaum/a80913e9c828d4bad3714a709f49586e这个typescript实现将轮询本地Docker守护进程的container stats端点,并计算每次的利用率。您将看到计算与 Jmeter 板报告的利用率一一对应。