跑步时
sudo iotop --only
Run Code Online (Sandbox Code Playgroud)
我得到所有执行 IO 的进程。我想接收特定进程的统计信息。当我跑
sudo iotop --only -p pid
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
CONFIG_TASK_DELAY_ACCT not enabled in kernel, cannot determine SWAPIN and IO %
Run Code Online (Sandbox Code Playgroud)
我怎样才能消除那个错误?
小智 0
我正在使用 Red Hat Enterprise Linux Server 版本 7.9 (Maipo) 和 iotop 0.6。
当对某些 pid 运行 iotop -p 时,例如我的 java tomcat 进程,我看到:
... SWAPIN IO> ...
... ?unavailable? ...
...
Run Code Online (Sandbox Code Playgroud)
CONFIG_TASK_DELAY_ACCT 未在内核中启用,无法确定 SWAPIN 和 IO %
对于其他 pid 来说,它工作正常。
对于有问题的 pid,如果我运行:
iotop -b -n 100 -P | grep ^pid
Run Code Online (Sandbox Code Playgroud)
以批处理模式运行 iotop 然后我看到:
... 0.00 % 0.00 % ...
Run Code Online (Sandbox Code Playgroud)
而不是“不可用”。因此,iotop -b 方法可能是一种解决方法。我还没有看到除 0.00 % 之外的任何值,因此我无法确定这是否显示真实值。
Red Hat 页面https://access.redhat.com/solutions/3726051报告了一个错误,指出如果使用无效的 pid 或“该”内核 pid,则会错误地显示错误消息。