Я пытаюсь получить статистику ЦП, диска и сети, используя файловую систему /proc. Мне удалось успешно получить статистику процессора и диска из /proc/stat и /proc/diskstats. Я до сих пор не нашел правильный способ сбора сетевой статистики.
Статистика, которую я хотел бы собрать для каждого Linux-бокса:
- Средняя пропускная способность сети
- Общее количество пакетов, полученных в секунду
- Общее количество пакетов, передаваемых в секунду
- Общее количество килобайт, полученных в секунду
- Общее количество килобайт, передаваемых в секунду
- Количество многоадресных пакетов, полученных в секунду
- Количество используемых в настоящее время сокетов TCP
- Общее количество сокетов, используемых в настоящее время
Я знаю, что могу получить эту статистику с помощью sar, но я хочу написать независимую программу, работающую аналогично sar. Было бы здорово, если бы кто-нибудь объяснил, откуда sar извлекает эту информацию и как она ее обрабатывает, чтобы периодически получать эту статистику.
/proc/net
. - person   schedule 09.06.2014