在日志文件中捕获nethogs输出

vab*_*050 9 linux bash

我想检查我的进程使用的网络带宽.为此,我发现nethogs工具很有用.使用此工具,我可以看到哪个进程占用了网络带宽和进程行为.但是如何从我的进程的nethogs中捕获数据并将其存储到日志文件中?

kap*_*tan 5

您可以在跟踪模式下在后台运行nethogs并将输出写入文件,如下所示:

sudo nethogs -t eth1 &> /var/tmp/nethogs.log & 
Run Code Online (Sandbox Code Playgroud)

按照此处nethogs-parser所述下载并构建。

然后,在积累了足够的数据后,您可以运行解析器来查看结果:

./hogs -type=pretty /var/tmp/nethogs.log 
Run Code Online (Sandbox Code Playgroud)

nethogs完成数据收集后,请确保终止正在运行的进程。

有关自动化任务的更多信息,请参见此处。


anu*_*ava 1

您可以使用此命令来捕获输出:

nethogs -d 5 | sed 's/[^[:print:][:cntrl:]]//g' > output.txt
Run Code Online (Sandbox Code Playgroud)

  • 这行不通。生成的output.txt不显示任何统计信息。 (2认同)
  • @ValerioSchiavoni 像 `nethogs -t` 这样使用,输出非常可重用! (2认同)