0
私はpythonを使ってベンチマークユーティリティを書いています。私は私のpythonプログラムがプログラムを実行し、その最大リソース使用量を得るだけでなく、出力をキャプチャしたいと思います。次のコードはコマンドを実行し、1秒に1回メモリとプロセッサの使用量を取得しますが、pythonの出力にもどのようにアクセスしますか?ここに私の現在の設定は次のとおりです。プロセスを監視し、Pythonで出力をキャプチャ
pid = psutil.Popen(cmd_args, shell=False, stdout=subprocess.PIPE)
p = psutil.Process(pid=pid.pid)
x = 0
cpu_util = []
mem_util = []
while p.status() != "zombie":
if x % 10 == 0:
with p.oneshot():
cpu_util.append(p.cpu_percent())
mem_util.append(p.memory_percent())
x += 1
time.sleep(0.1)
max_cpu_load = max(cpu_util)
max_mem_load = max(mem_util)
#What I would like to do, but don't understand
print(pid.stdout)
出力をファイルにエクスポートしますか? 「出力を得る」とはどういう意味ですか? –
これはhttps://stackoverflow.com/questions/38630421/how-to-execute-shell-command-and-stream-output-with-python-and-flask-upon-http-r soの質問に似ています。そこに答えがあるかもしれません。 –
@YuZhang、ありがとう、私は私の質問を更新しました。私は私のpythonプログラムの中でstdoutとstderrにアクセスしたいと思います。 – mcragun