Как отслеживать события в реальном времени в Linux

{title}

Одна из лучших практик, которую мы, как персонал ИТ-поддержки, можем выполнять, - это создавать периодические задачи, в которых можно просматривать все события, происходящие в операционной системе.

Это функционально, поскольку событие дает нам такие показатели, как:

  • Пользователь, который внес изменение
  • Дата и время события
  • Тип и идентификатор события и многое другое.

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

1. Мониторинг событий в реальном времени в Linux с помощью команды Tail


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

Его синтаксис выглядит следующим образом:

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

Использование этой команды имеет две основные альтернативы:

Вариант 1
В первом варианте команда tail будет нуждаться в аргументе -f, который будет следовать содержимому файла.

 хвост sudo -f (файл) 
В этом случае мы выполним следующую строку:
 хвост sudo -f / etc / passwd 

{title}

Вариант 2
Второй вариант команды - это, по сути, ее первоначальный синтаксис: tailf, с этим параметром нет необходимости использовать ключ -f, поскольку команда включена с аргументом -f.

 sudo tailf / etc / passwd 

{title}

Как правило, файлы журнала часто вращаются на сервере Linux с помощью утилиты logrotate. Для просмотра файлов журнала, которые чередуются ежедневно, мы можем использовать команду -F (flag to tail.):

 хвост sudo -F / etc / passwd 
Параметр tail -F будет отслеживать, создается ли новый файл журнала, и начнет отслеживать новый файл вместо предыдущего.

По умолчанию команда tail отображает последние 10 строк файла. Если мы хотим видеть только последние две строки файла журнала в реальном времени, мы можем использовать файл -n в сочетании с флагом -f следующим образом:

 хвост sudo -n2 -f / etc / passwd 

{title}

2. Мониторинг событий в реальном времени в Linux с помощью команды Multitail


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

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

В пределах своих характеристик мы имеем

  • Несколько входных источников
  • Цветной экран с регулярным выражением в случае важной информации
  • Линейная фильтрация
  • Интерактивные меню для удаления и добавления оболочек.

Для установки этой утилиты мы можем выполнить следующие команды в зависимости от используемого дистрибутива:

 sudo apt установить мультитейл (Debian / Ubuntu) sudo yum установить мультитейл (RedHat / CentOS) sudo dnf установить мультитейл (Fedora 22 и выше) 

{title}

$config[ads_text5] not found

Чтобы показать вывод двух файлов журнала одновременно, мы будем использовать следующий синтаксис:

 sudo multitail (Route1) (Route2) sudo multitail / etc / passwd / var / log / syslog 
Результат будет следующим. Мы можем видеть детали каждого из аргументов, которые мы указали.

{title}

3. Мониторинг событий в реальном времени в Linux с помощью команды lnav


Lnav (Log File Navigator) - это небольшая расширенная программа просмотра файлов журналов, с помощью которой можно будет просматривать и анализировать файлы журналов с терминала.

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

 sudo apt установить lnav (Debian / Ubuntu) sudo yum установить lnav (RedHat / CentOS) sudo dnf установить lnav (Fedora 22 и более поздние версии) 

$config[ads_text6] not found

{title}

С помощью lnav будет возможно анализировать содержимое двух файлов журнала одновременно со следующим синтаксисом:

 Судо Лнав (Маршрут 1) (Маршрут 2) 
В этом случае:
 sudo lnav / etc / passwd / var / log / syslog 

{title}

Там мы найдем всю подробную информацию о каждой записи.

4. Отслеживайте события в реальном времени в Linux с помощью команды less


С помощью команды less будет возможно отобразить вывод в реальном времени выбранных файлов журнала. Для этой визуализации мы можем получить доступ к файлу и нажать клавиши Shift + F, чтобы увидеть его содержимое. В качестве альтернативы также можно будет использовать меньше + F для входа в режиме реального времени просмотра файла:
 sudo less + F / etc / passwd 

{title}

Мы видели различные альтернативы для доступа и мониторинга событий в реальном времени в средах Linux простым и функциональным способом.