Поиск по сайту:

Collectl: расширенный инструмент отчетности о производительности Linux


Самая важная обязанность системного администратора Linux — следить за тем, чтобы система, которой он/она администрирует, находилась в очень хорошем состоянии. Для системных администраторов Linux доступно множество инструментов, которые могут помочь отслеживать и отображать процессы в системе, такие как top и htop, но ни один из этих инструментов не может конкурировать с collectl.

collectl — это очень удобная многофункциональная утилита командной строки, которую можно использовать для сбора данных о производительности, описывающих текущее состояние системы. В отличие от большинства других инструментов мониторинга, collectl не фокусируется на ограниченном количестве системных показателей, вместо этого он может собирать информацию о множестве различных типов системных ресурсов, таких как процессор, диск, память, сеть, сокеты, TCP, индексные дескрипторы, Infiniband, кластер, память, NFS, процессы, квадрики, плиты и Buddyinfo.

Преимущество использования collectl заключается в том, что он также может играть роль утилит, созданных только для определенной цели, таких как top, ps, iotop и многих других. Какие функции делают collect полезным инструментом?

Ниже приведены некоторые наиболее важные функции утилиты командной строки collectl.

Особенности сбора

  • Он может работать в интерактивном режиме, как демон или и то, и другое.
  • Он может отображать выходные данные во многих форматах.
  • Он имеет возможность контролировать практически любую подсистему.
  • Он может играть роль многих других утилит, таких как ps, top, iotop и vmstat.
  • Он имеет возможность записи и воспроизведения захваченных данных.
  • Он может экспортировать данные в различные форматы файлов. (это очень полезно, если вы хотите проанализировать данные с помощью внешних инструментов).
  • Он может работать как служба для мониторинга удаленных компьютеров или всего кластера серверов.
  • Он может отображать данные в терминале и записывать в файл или сокет.

Как установить сбор в Linux

Утилита collectl работает во всех дистрибутивах Linux, единственное, что ей требуется для запуска, это perl, поэтому убедитесь, что у вас установлен Perl (поставляется предустановлен) на вашем компьютере перед установкой collectl на ваш компьютер.

Установите Collectl в системах Debian

Следующую команду можно использовать для установки утилиты collectl в дистрибутивах на основе Debian, таких как Ubuntu и Linux Mint.

sudo apt-get install collectl

Установите Collectl в системах Debian

Если вы используете дистрибутив на основе RedHat, например Rocky Linux или AlmaLinux, или любой другой дистрибутив Linux, вы можете легко загрузить архив, распаковать его и запустить, как показано.

wget https://sourceforge.net/projects/collectl/files/latest/download -O collectl.tar.gz
tar -xvf collectl.tar.gz
cd collectl-*
./INSTALL

Использование инструмента мониторинга Collectl в Linux

После завершения установки инструмента collectl вы сможете легко запустить его с терминала, даже без каких-либо опций. Следующая команда отобразит информацию о статистике процессора, диска и сети в очень коротком и удобочитаемом формате.

collectl

Как вы, ребята, можете видеть из приведенного выше вывода, отображаемого на экране терминала, очень легко работать со значениями системных показателей, представленными в выводе команды, поскольку они отображаются в одной строке.

Когда утилита collectl выполняется без каких-либо опций, она отображает информацию о следующих подсистемах:

  • Процессор
  • диски
  • сеть

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

Вы также можете отобразить статистику для всех подсистем, кроме плит, объединив команду с параметром --all, как показано ниже.

collectl --all

Но как с помощью утилиты контролировать загрузку процессора? Опцию -s следует использовать для управления тем, какие данные подсистемы должны быть собраны или воспроизведены.

Например, следующую команду можно использовать для мониторинга сводной информации об использовании процессора.

collectl -sc

Что произойдет, если вы объедините команду с «scdn»? Лучший способ научиться использовать инструменты командной строки — это как можно больше практиковаться, поэтому запустите следующую команду в своем терминале и посмотрите, что произойдет.

collectl -scdn

Вы можете легко понять, что параметр по умолчанию — «cdn», он означает процессор, диски и сетевые данные. Результат команды такой же, как и результат "collectl -scn"

Если вы хотите собрать данные о памяти, используйте следующую команду.

collectl -sm

Приведенный выше вывод очень полезен, если вы хотите получить подробную информацию об использовании вашей памяти, свободной памяти и других важных данных для производительности вашей системы.

Как насчет некоторых данных по TCP? Используйте следующую команду, чтобы сделать это.

collectl -st

После того, как вы накопите некоторый опыт, вы сможете легко комбинировать варианты для получения желаемых результатов. Например, вы можете объединить «t» для TCP и «c» для процессора. Следующая команда делает это.

collectl -stc

Нам, людям, сложно запомнить все доступные параметры, поэтому я публикую сводный список подсистем, поддерживаемых этим инструментом.

  • b — информация о собеседнике (фрагментация памяти)
  • c – ЦП
  • d — Диск
  • f — данные NFS V3
  • i — индексный дескриптор и файловая система
  • j – Прерывания
  • l – Блеск
  • m – Память
  • n – Сети
  • s – Сокеты
  • t – TCP
  • x – Межсоединение
  • y – плиты (кеши системных объектов)

Очень важная часть данных для системного администратора или пользователя Linux — это данные, собранные об использовании диска. Следующая команда поможет вам отслеживать использование диска.

collectl -sd

Вы также можете использовать опцию «-sD» для сбора данных на отдельных дисках, но вы должны знать, что информация обо всех дисках не будет сообщена.

collectl -sD

Вы также можете использовать другие подсистемы детализации для сбора подробных данных. Ниже приводится список подробных подсистем.

  • C — процессор
  • D — Диск
  • E — данные об окружающей среде (вентилятор, мощность, температура) через ipmitool.
  • F – данные NFS
  • J – Прерывания
  • L — сведения о Lustre OST ИЛИ сведения о файловой системе клиента.
  • N – Сети
  • T — 65 счетчиков TCP доступны только в формате графика.
  • X – Межсоединение
  • Y – плиты (кеши системных объектов)
  • Z – Процессы

В утилите collectl имеется множество опций, но не хватит времени и места, чтобы охватить их все в одной статье. Однако стоит упомянуть и научить пользоваться утилитой как top и ps.

Заставить collectl работать как утилиту top очень легко: просто запустите следующую команду в своем терминале, и вы увидите аналогичный результат в top. Инструмент Strong> дает вам возможность выполнить его в вашей системе Linux.

collectl --top

И теперь последнее, но не менее важное: чтобы использовать утилиту collectl в качестве инструмента ps, выполните следующую команду в своем терминале. Вы получите информацию о процессах в вашей системе так же, как при запуске команды «ps» в своем терминале.

collectl -c1 -sZ -i:1

Я совершенно уверен, что многим системным администраторам Linux понравится инструмент collectl, и они почувствуют его мощь при его использовании в полной мере. Если вы хотите расширить свои знания о collectl на новый уровень, обратитесь к страницам руководства и продолжайте практиковаться.

Просто введите следующую команду в своем терминале и начните читать.

man collectl