如何監控每個進程的頻寬使用

如何監控每個進程的頻寬使用

我最近在我的 DigitalOcean Droplet (Ubuntu) 上安裝了 vnstat。大約一個月後,我決定檢查日誌,令我驚訝的是,看到伺服器進出「大量」頻寬。每天大約 50-100MB!對於這個 Droplet 來說,這是很多,因為它只託管一個靜態頁面,沒有透過 nginx 產生映像。

如何記錄每個進程的頻寬使用情況,以便找到導致此情況的原因?我檢查了我的 nginx 日誌,它幾乎沒有發送任何字節,所以它必須是其他東西...

我遇到過 nethogs 等工具,但這些工具的問題是,與 vnstat 不同,它們只收集即時數據。理想情況下,我想要像 vnstat (每 5 分鐘更新一次)一樣工作的東西,但也能告訴我哪個進程/端口/等。正在造成它。

答案1

您需要有一個 Windows 盒子來進行監控,但是 SolarWinds 免費的頻寬分析器工具將提取頻寬資訊以及 NetFlow(如果您有支援它的路由器)。 netflow 和(更多資訊在這裡:https://serverfault.com/questions/306361/how-to-generate-netflow-data-in-linux)這將為您提供正在連接的外部節點、每個節點的流量以及使用的協定。

相關內容