Glances: удобный мониторинг системы






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

Glances Logo


Основным достоинством Glances является её ориентированность на консоль, поскольку мониторинг в 99% случаев необходим на серверах. Вторым плюсом сего чуда является возможность работы в клиент-серверном режиме. Ну и мелкие плюшки, вроде цветовой подсветки превышения пороговых значений и ведения логов, также придают некоторого шарма. Итак, утилита позволяет выполнять мониторинг в одном окне:

  • использование CPU;
  • Load Average;
  • использование RAM и Swap;
  • битрейт интерфейсов;
  • данные сенсоров (только в Linux);
  • битрейт ввода-вывода;
  • использование ФС;
  • информацию о процессах;

Установка

Согласно информации на гитхаб-странице проекта, на сегодняшний день утилита присутствует в пакетных репозиториях Debian (SID), Arch, Fedora, Redhat и FreeBSD. Если же вам по каким-то причинам необходимо установить Glance платформо-независимым способом, то можно воспользоваться штатным Python-установщиком PIP. Пример для Denian/Ubuntu:

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

Запуск и работа

В standalone-режиме Glance запускается без ключей, если только вы не хотите изменить таймаут обновления данных, который по умолчанию равен одной секунде. Если вы хотите умерить пыл Glance, можно увеличить этот параметр при запуске:

Ну и, собственно, вот она:

Glance

Зелёным цветом выделены показания, находящиеся в пределах нормы. Далее, в порядке возрастания критичности значения показателя используются цвета: синий, пурпурный и красный.

Горячие клавиши

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

  • 'a' включает автоматическую сортировку списка процессов:
    • если CPU IoWait > 60%, то сортировка выполняется по активности ввода-вывода;
    • если CPU > 70%, то сортировка выполняется по занимаемому процессорному времени;
    • если MEM > 70%, то процессы сортируются по занимаемому объёму памяти;
  • 'b' переключает отображение сетевой активности между битами/сек и байтами/сек;
  • 'c' сортирует процессы в порядке убывания потребления процессорного времени;
  • 'd' включает/отключает отображение блока статистики дискового ввода-вывода;
  • 'f' включает/отключает отображение данных о смонтированных ФС;
  • 'h' показывает справку по горячим клавишам;
  • 'i' сортирует процессы по активности ввода-вывода;
  • 'l' включает/отключает отображение лог-сообщений;
  • 'm' сортирует процессы по объёму занимаемой памяти;
  • 'n' включает/отключает отображение сетевой статистики;
  • 'p' сортирует процессы по имени;
  • 's' включает/отключает отображение статистики сенсоров (работает только после вызова Glances с флагом '-e');
  • 'w' удаляет неактуальные лог-сообщения типа warning;
  • 'x' удаляет неактуальные лог-сообщения типа warning и critical;
  • '1' переключает отображение процессорной статистики между общим и поядерным представлениями;
  • 'q' завершает работу программы.

Лог-сообщения

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

Glances log

Запуск в клиент-серверном режиме

Glances умеет работать в режиме клиент-сервер, таким образом вы можете избавиться от необходимости подключаться по SSH каждый раз. Для того, чтобы запустить Glances на сервере, используйте флаг -s:

после чего можете подключиться клиентом:

заменив @server на имя хоста или IP-адрес сервера.

По умолчанию утилита цепляется на все интерфейсы, на порт 61209. Если вам необходимо привязать Glances к другому интерфейсу, используйте флаг -B:

Для переопределения TCP-порта предназначен флаг -p:

Начиная с недавно вышедшей версии 1.6 вы можете указать пароль подключения:

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

Больше информации

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




Glances: удобный мониторинг системы: 2 комментария

  1. поправьте пожалуйста, в «Запуск и работа» закралась ошибка: должно быть glances, a не glance. glance — другая утилита.

Комментарии запрещены.