netstat для количества пакетов, полученных идентификаторами процесса - PullRequest
0 голосов
/ 05 июля 2019

Я использую простую команду netstat "netstat -nltp", которая показывает мне все активные соединения TCP вместе с PID и именем процесса.Однако даже после игры с параметрами, я не могу получить важную информацию от команды.

То есть:

Я хочу увидеть количество пакетов, полученных и отправленных с / на этотPID Я узнал, что Recv-Q и Send-Q не указывают на это.Кроме того, параметр статистики, кажется, суммирует для всех процессов.Как я могу увидеть пакеты, полученные и отправленные в PID?

Спасибо

Ответы [ 2 ]

1 голос
/ 05 июля 2019

Используйте для этого внутренние счетчики процессов:

cat /proc/<PID>/net/netstat
1 голос
/ 05 июля 2019

Вы хотите вести учет сетевого трафика для каждого процесса.

Существует ряд приложений, которые позволяют вам делать это в режиме реального времени (т. Е. nethogs), но проблема заключается в том, что со временем сохраняются счетчики трафика.

Я бы посоветовал вам сделать это, используя iptables, при условии, что вы можете четко различать свои процессы, используя сетевой порт.

Эта статья по-прежнему подходит для вашего случая использования: https://www.cyberciti.biz/faq/linux-configuring-ip-traffic-accounting/

PS: Этот тип вопросов лучше всего подходит для сбоя сервера

...