В файлы журналов (лог-файлы) записываются события и действия, которые происходят в программном обеспечении, операционной системе или ее компонентах. Эти файлы автоматически генерируются и дополняются в процессе работы ПК или приложения. Системным администраторам важно отслеживать и анализировать сообщения из лог-файлов для решения или предотвращения потенциальных проблем / ошибок.
В этой статье мы расскажем о четырех утилитах командной строки Linux, которые позволяют в режиме реального времени отслеживать сообщения из файлов журналов.
Содержание:
Утилита tail
Команда tail
— встроенный инструмент терминала Linux, который используется для отображения последних нескольких строк (по умолчанию — десяти) текстового файла или потока данных. Ее функционал позволяет отслеживать сообщения в постоянно обновляемых файлах в режиме реального времени. Для этого команду tail
следует применять с опцией -f
и названием текстового документа в качестве аргумента. Например:
На скриншоте выше видно, что команда tail
не завершила свою работу, а продолжает ожидать появления новых сообщений в указанном файле.
Ротация журнала — процесс, который позволяет поддерживать лог-файлы в актуальном состоянии. Она заключается в периодической архивации старых файлов журналов и создании новых. Эта операция предотвращает увеличение файлов до слишком больших размеров и чрезмерное потребление ими дискового пространства.
Читайте также: 13 примеров команды cat для начинающих в Linux.
Может случиться так, что Вы пропустите момент ротации лог-файлов и укажете устаревший файл журналов в качестве аргумента для команды tail
. Тогда опция -F
указывает утилите обнаружить процесс ротации и автоматически переключиться на новый файл без вмешательства пользователя. Например:
Вы можете изменить количество выводимых на экран строк из файла. Для этого следует дополнительно использовать параметр -n
с нужным значением количества строк. К примеру:
Утилита multitail
Команда multitail
позволяет пользователям отслеживать несколько файлов журналов одновременно в одном окне терминала. Она разделяет интерфейс командной строки на панели, что делает удобным мониторинг лог-файлов в режиме реального времени.
Установить утилиту multitail
в ОС Linux можно с помощью одной из следующих команд.
Для Debian / Ubuntu:
Для RHEL / CentOS:
Для Fedora 22+:
Читайте также: 15 примеров использования apt.
Чтобы отслеживать сразу несколько файлов, просто укажите пути к ним в качестве аргументов к команде multitail
. Например:
Вы также можете мониторить всего один лог-файл с помощью этой утилиты:
Инструмент lnav
Утилита lnav
(от англ. Log File Navigator) позволяет в интерактивном режиме просматривать лог-файлы в ОС Linux. Этот инструмент предлагает пользователям функции навигации, поиска и анализа данных журнала, облегчая устранение неполадок и получение важной информации.
Чтобы установить lnav
в ОС Linux, выполните одну из следующих команд.
Для Debian / Ubuntu:
Для RHEL / CentOS:
Для Fedora 22+:
Чтобы открыть лог-файл с помощью команды lnav
, передайте путь к нему в качестве аргумента:
На скриншоте выше видно, что команда также показывает время последнего обновления файла, количество открытых файлов и количество зафиксированных ошибок.
Читайте также: Как использовать команду tree в Linux.
Вы также можете открыть с помощью lnav
сразу несколько файлов журналов. К примеру:
Важно: в таком случае утилита lnav
не разделяет содержимое файлов на разные панели, а выводит на экран сообщения из них по мере их поступления.
Утилита less
Утилита less
— встроенный инструмент командной строки Linux для просмотра текстовых документов в окне терминале. Она позволяет выводить содержимое файла на экран и перемещаться по нему.
Чтобы отобразить текстовый файл в режиме реального времени, следует использовать команду less
с опцией +F
. Например:
На скриншоте выше видно, что утилита не прекратила свою работу и вывела на экран сообщение Waiting for data... (interrupt to abort)
. Это значит, что less
ожидает, что файл будет дополняться, и инструмент готовится выводить новые сообщения на экран.
Выводы
Мы рассказали Вам, как использовать утилиты tail
, multitail
, lnav
и less
для мониторинга лог-файлов в режиме реального времени. Надеемся, что эта статья была полезной для Вас!
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.