私はフラスコのアプリケーションは、それが現在のパーセンテージとして使用しているどのくらいのCPUとメモリを報告したいと思いますが返されますcpu_percentのために0.0を返します。しかしpsutilのcpu_percentは常に0.0
$ while true; do curl http://127.0.0.1:8000/test &>/dev/null; done &
$ curl http://127.0.0.1:8000/stats
{
"cpu_percent": 0.0,
"cpu_times": [
4.97,
1.28,
0.0,
0.0
],
"mem_info": [
19652608,
243068928,
4292608,
4096,
0,
14675968,
0
],
"mem_percent": 1.8873787935409003
}
、私は手動でipython使用してチェックした場合:
import psutil
p = psutil.Process(10993)
p.cpu_percent()
これは、0.0より大きい値を正しく返します。
これは一種の自己参照です。アプリケーションは余分なサイクルとメモリを消費し、すでに消費されているサイクル数とメモリ数を報告するだけです。これは、他のプロセス監視アプリケーションおよびサービスで実現できます。なぜあなたのアプリでこれをしたいですか? – Makoto