Поиск по сайту:
Камергер редко наслаждается природою (К. Прутков).

3 способа просмотра журналов в реальном времени в Linux

20.09.2021
3 способа просмотра журналов в реальном времени в Linux

Вы умеете просматривать файлы в Linux. Для этой цели вы используете команду cat или, возможно, команду less.

Это хорошо для файлов со статическим содержимым. Но файлы журналов динамичны, и их содержимое меняется со временем. Чтобы отслеживать журналы, вам необходимо следить за изменением содержимого файла журнала.

Как вы видите содержимое файлов журналов в реальном времени? Tail – самая популярная команда для этой цели, но есть и другие инструменты.

 

Метод 1. Просмотрите файлы журнала с помощью команды tail

Команда tail настолько популярна для просмотра файлов журнала в реальной жизни, что системные администраторы используют термин «tail the log file (хвост файла журнала)».

Команда tail в основном используется для отображения строк файла с конца, отсюда и термин «tail».

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

tail -f location_of_log_file

 

Для того, чтобы остановить хвостохранилищ лог – файла, используйте Ctrl + C терминала ярлык.

 

Tail и grep

Хорошо! Таким образом, команда tail решает проблему, показывая изменения файла в реальной жизни. Но постоянное наблюдение за файлом журнала, когда происходит так много быстрых изменений в реальном времени, не очень полезно.

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

Чтобы упростить задачу, объедините команду tail и grep следующим образом:

tail -f log_file | grep search_term

 

Это хорошо, правда? Давайте сделаем это немного лучше.

Строки с искомыми словами не раскрывают необходимых деталей. Вот почему мы используем команду grep, чтобы показать несколько строк до и после искомого термина с опцией -C.

tail -f log_file | grep -C 3 search_term

 

Читать  10 примеров команды Netstat в Unix/Linux

Теперь вы увидите строки, соответствующие поисковому запросу, а также 3 строки до и после него. Это даст лучшее представление о том, что происходит.

Хотите сделать его еще лучше? Вы можете использовать grep для нескольких поисковых запросов и даже сделать поиск без учета регистра:

tail -f log_file | grep -C 3 -i - E 'search_term_1|search_term_2'

 

Сохранение файла с ротацией журнала

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

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

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

tail --follow=name log_file | grep -C 3 -i - E 'search_term_1|search_term_2'

 

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

Tail удобен для мониторинга файла журнала в реальном времени, но что, если вам нужно анализировать более одного файла журнала одновременно? Ответ кроется в следующем разделе.

 

Просмотр нескольких файлов журнала с помощью хвоста

Это должно работать в системах Linux. Вы можете отслеживать несколько файлов журнала одновременно с помощью команды tail. Просто укажите путь к файлу следующим образом:

tail -f log_file_1 -f log_file_2

 

Читать  Команда Linux: использование passwd

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

Есть немного лучший способ просматривать сразу несколько файлов журнала с помощью утилиты multitail.

 

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

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

Команда tail тоже может делать то же самое, верно?

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

Помните, что хвост показывает все в одном ракурсе, и за этим становится трудно следить. Multitail преодолевает эту трудность, предоставляя разделенный вид, как команда экрана.

Multitail не является такой важной командой, как tail, и вам, возможно, придется установить ее перед использованием.

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

multitail log_file_1 log_file_2

 

По умолчанию multitail  работает так же, как tail -f. Он показывает последние 100 строк, а затем переходит в режим реального времени. По умолчанию вид разбивается на строки.

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

Нажмите q, чтобы выйти из всех видов просмотра в многоадресном режиме.

Вы можете разделить представления на столбцы следующим образом:

multitail -s 2 log_file_1 log_file_2

 

Читать  Как установить и настроить WireGuard в Kali Linux

Между -sи количеством столбцов есть обязательный пробел.

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

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

 

Метод 3: просмотр изменений файла журнала в реальном времени с меньшим количеством команд

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

Эта опция +Fпозволяет меньше отслеживать изменения, внесенные в текстовый файл.

less +F log_file

 

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

Нажмите Ctrl + c, чтобы прервать и q, чтобы выйти из представления.

Этот метод позволяет быстро просматривать изменения журнала, не загромождая экран, в отличие от команды tail.

 

Заключение

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

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

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
Несмотря на рост числа платформ, таких как Яндекс Plus, Apple…

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: