Будь вы администратор сервера или программист, вам периодически необходимо обращаться к нескольким лог-файлам для эффективного устранения неполадок. Чтобы достичь этого, необходимо каждый раз открывать каждый лог-файл в новой консоли. Однако можно использовать традиционную команду tail, например tail -f /var/log/messages или tail -f /var/log/secure, в одной строке. Но если мы хотим видеть несколько файлов одновременно в режиме реального времени, нам нужно установить специальный инструмент под названием MultiTail.
MultiTail - это утилита ncurses с открытым исходным кодом, которую можно использовать для отображения нескольких файлов журнала на стандартном выводе в одном окне или в одной оболочке, которая отображает последние несколько строк файлов журнала в режиме реального времени, как команда tail, которая разделяет консоль на несколько подокон (очень похоже на экранная команда). Он также поддерживает цветную подсветку, фильтрацию, добавление и удаление окон и многое другое.
Функции
Вот пример экрана MultiTail в действии
Чтобы получить MultiTail в дистрибутивах Red Hat, вы должны включить репозиторий EPEL.
В RHEL/CentOS/Fedora
# yum install -y multitail
В Debian/Ubuntu/Linux Mint
$ sudo apt-get update $ sudo apt-get install multitail
По умолчанию MultiTail делает то же самое, что и «tail -f», то есть просматривает файлы в режиме реального времени.
root@test-VirtualBox:~# multitail /var/log/auth.log /var/log/syslog
Для прокрутки файлов нажмите ‘b‘ и выберите нужный файл из списка.
Как только вы выберете файл, он покажет вам последние 100 строк этого выбранного файла, для прокрутки используйте клавиши курсора. Вы также можете использовать ‘g‘ / ’G‘ для перемещения вверх/вниз окна прокрутки. Если вы хотите просмотреть больше строк, нажмите ‘q’, чтобы выйти, и нажмите 'm', чтобы ввести новое значение количества строк для просмотра.
Выведем 3 файла в трех столбцах.
root@test-VirtualBox:~# multitail -s 3 /var/log/auth.log /var/log/syslog /var/log/kern.log
Выведем 5 лог-файлов, объединив 2 файла в одном столбце и оставив 2 файла в двух столбцах, и только один в левом столбце.
root@test-VirtualBox:~# multitail -s 2 -sn 1,3 /var/log/dpkg.log -I /var/log/fontconfig.log /var/log/kern.log /var/log/syslog /var/log/Xorg.0.log
Выведем 1 лог-файл, а в это время как опция -l позволит команде выполняться в окне.
root@test-VirtualBox:~# multitail /var/log/syslog -l "ping yandex.ru"
Объединим 2 лог-файла журнала в одном окне, но каждый лог-файл отобразим разным цветом, чтобы легко понять, какие строки какого лог-файла.
root@test-VirtualBox:/# multitail -ci green /var/log/dpkg.log -ci yellow -I /var/log/apport.log
Мы рассмотрели лишь несколько основных способов использования команды Multitail. Для получения полного списка опций и клавиш вы можете посмотреть страницe man multitail или нажать клавишу h для помощи во время работы программы.