LINUX.ORG.RU
решено ФорумAdmin

[r][трафик процесса]


0

0

Существует ли консольная утилитка, позволяющая мониторить трафик _одного_ процесса (по pid - идеально)?
Интересует скорость и объем за определенный промежуток времени.

pcap-based не подходят, нужно не грабить трафик, а считать параметры.
ip:port-based не подходят, т.к. приложение использует несколько портов и динамически создает исходящие коннекты.


Ответ на: комментарий от AITap

Сейчас проверю, отпишусь.
Просто большинство утилит на pcap так или иначе дампят трафик без вывода статистики, посему и упомянул это условие.

whoami ()
Ответ на: комментарий от pinachet

CentOS, поэтому все пересборки - разве что в самом крайнем случае.

whoami ()
Ответ на: комментарий от AITap

Спасибо, но немного не то, что хотелось бы: nethogs меряет только мгновенную скорость (а хотелось бы еще и количество за час или день скажем), и делает это слишком «мусорно» (мне не удалось настроить его на работу только с одним pid; а процессов много, суммарный трафик большой, не успеваешь уследить за нужным).
Надеюсь, понятно что примерно нужно?

whoami ()
Ответ на: комментарий от whoami

Теперь понятно, но такие программы мне неизвестны.

AITap ★★★★★ ()

Что-то pcap ориентированное - это единственный возможно путь. Биты, байты и пакеты считается на интерфейсе, нету там нигде привязок к конкретным процессам. Придется дампить конкретный трафик, считать его. Буду рад ошибаться.

BigAlex ★★★ ()
Ответ на: комментарий от BigAlex

Проблема не в pcap, а в том, что нет нужных утилит, использующих pcap.
iptables - стрельба из пушки по воробьям, не находите?

whoami ()
Ответ на: комментарий от BigAlex

>Правда поидее можно и отдельной цепочкой в iptables посчитать...

Боюсь, не прокатит. -m owner --pid-owner (а также --sid-owner и --cmd-owner) давно выкинули из-за конфликтов с SMP-патчем.

nnz ★★★★ ()

Вот за такие вещи линукс и называют ляликсом.

В качестве костыля можно пустить приложение от отдельного пользователя и считать трафик iptables.

tailgunner ★★★★★ ()
Ответ на: комментарий от whoami

нормальный способ, можно в ULOG выплёвывать статистику и считать.

true_admin ★★★★★ ()

я видел способ посчитать с LD_PRELOAD который считал трафик с сокетов. Где не помню, но можно легко написать.

true_admin ★★★★★ ()
Ответ на: комментарий от tailgunner

И на солнце бывают пятна. Назови любую систему и я скажу в чём её недостатки и как её называют.

Всё же как универсальное решение лиух впереди планеты всей, кмк.

true_admin ★★★★★ ()
Ответ на: комментарий от whoami

Проблема не в pcap, а в том, что нет нужных утилит, использующих pcap. iptables - стрельба из пушки по воробьям, не находите?

Хуже pcap точно ничего быть не может. ipt был бы неплохим решением, если бы имел нормальный интерфейс для опроса счётчиков.

mikki ()

Итог

Через Connmark сделал маркировку пакетов

-A OUTPUT -o eth+ -m owner --uid-owner my_daemon_uid -j CONNMARK --set-mark 0x66

ULOG'ом считаю статистику

-A OUTPUT -o eth+ -m connmark --mark 0x66 -j ULOG --ulog-prefix «DAEMON_OUT» --ulog-cprange 48 --ulog-qthreshold 50
-A INPUT -i eth+ -m connmark --mark 0x66 -j ULOG --ulog-prefix «DAEMON_IN» --ulog-cprange 48 --ulog-qthreshold 50

при помощи ulog-acctd все это дело дамплю в txt-файл, а затем по крону выполняю парсинг дампа с заносом результатов в БД.

На настройку (включая написание парсера и отладку) ушло часа 4.

whoami ()
Ответ на: Итог от whoami

В качестве итога было бы неплохо хотя бы howto кратенько наваять

Hokum ☆☆☆☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.