如何在 Python 中监控每个进程的网络使用情况?

exp*_*101 6 python networking

我正在寻求解决我的互联网问题,因此我需要一种方法来跟踪我的延迟以及哪个应用程序正在使用多少网络带宽。

我已经解决了检查延迟的问题,但现在我需要一种方法来监视每个进程的网络使用情况(KB/秒),就像它在 Windows 任务管理器中的显示方式一样。

在您建议一个程序之前,除非它能够用时间戳记录值,否则这不是我想要的。我要求采用 Pythonic 方式,因为我需要同时记录网络带宽和延迟值,以便我可以确定特定进程是否导致延迟峰值。

所以这是我需要的信息:

时间 | 进程 ID | 进程名称| 向下使用 | 增加使用量 | 网络延迟 |

另外,请不要链接到另一个 Stackoverflow 问题,除非您知道他们的解决方案有效。我已经查过很多了,但没有一个起作用,这就是我再次询问的原因。

小智 3

本指南的第三部分为我提供了帖子中列出的所有信息,减去延迟。鉴于您说您已经测量了延迟,我认为这不是问题。

将其记录到 csv/json/无论什么都非常容易,因为所有信息都存储在 panda 数据框中。

由于这显示了进程的创建时间,因此您可以使用 datetime 在记录时生成新的时间戳。

我在 print_df 变量初始化后通过记录到 csv 来测试这一点,没有出现任何问题。