# Multitail - одновременный мониторинг нескольких файлов в одном терминале Linux Если вы администратор сервера или программист, то вам периодически необходимо обращаться к нескольким лог-файлам для эффективного устранения неполадок. Чтобы достичь этого, необходимо каждый раз открывать каждый лог-файл в новой консоли. Однако можно использовать традиционную команду tail, например `tail -f /var/log/messages` или `tail -f /var/log/secure`, в одной строке. Но если мы хотим видеть несколько файлов одновременно в режиме реального времени, нам нужен специальный инструмент под названием MultiTail. ## Что это такое **MultiTail** - это ncurses-утилита с открытым исходным кодом, которая может использоваться для отображения нескольких файлов журналов в виде стандартного вывода в одном окне или в одной shell-оболочке, отображающая несколько последних строк файлов журналов в режиме реального времени (как это делает команда tail), и разбивающая консоль на несколько подокон (что очень похоже на screen). Она также поддерживает цветную подсветку, фильтрацию, добавление и удаление окон и многое другое. Функции: * Несколько источников ввода. * Цветной дисплей с использованием регулярных выражений в случае важной информации. * Линейная фильтрация. * Интерактивные меню для удаления и добавления оболочек. Пример экрана MultiTail в действии {{:linux:administration:multitail1.png?400|}} ## Установка MultiTail в Linux В Debian/Ubuntu/Linux Mint ``` $ sudo apt-get update $ sudo apt-get install multitail ``` Чтобы получить MultiTail в дистрибутивах Red Hat, вы должны включить репозиторий EPEL. Установка в RHEL/CentOS/Fedora ``` # yum install -y multitail ``` ## Использование MultiTail По умолчанию MultiTail выполняет те же функции, что и `tail -f`, т.е. просматривает файлы в режиме реального времени. Для просмотра/мониторинга двух разных файлов в одном окне основной синтаксис такой: ### 1. Как просмотреть 2 файла в одном окне ``` [root@tecmint:~]# multitail /var/log/apache2/error.log /var/log/apache2/error.log.1 ``` {{:linux:administration:multitail-two-files-620x406.jpeg?400|Просмотр двух файлов}} Чтобы просмотреть файлы, нажмите ‘b‘ и выберите нужный файл из списка. {{:linux:administration:select-file-620x405.jpeg?400|Выбор файла}} Как только вы выберете файл, вам будут показаны последние 100 строк этого выбранного файла, для прокрутки используйте клавиши управления курсором. Вы также можете использовать "gg"/"G" для перемещения в верхнюю/нижнюю часть окна прокрутки. Если вы хотите просмотреть больше строк, нажмите "q" для выхода и "m" для ввода нового значения количества строк для просмотра. {{:linux:administration:view-file-620x408.jpeg?400|Просмотр файла}} ### 2. Как просмотреть 2 файла в 2 колонках Вывод Следующая команда отобразит два разных файла в 2 колонках. ``` [root@tecmint ~]# multitail -s 2 /var/log/mysqld.log /var/log/xferlog ``` {{:linux:administration:view-files-in-2-columns-620x405.jpeg?400|Просмотр файлов в 2 колонках}} ### 3. Как просмотреть несколько файлов в нескольких столбцах Отобразить 3 файла в трех столбцах. ``` [root@localhost ~]# multitail -s 3 /var/log/mysqld.log /var/log/xferlog /var/log/yum.log ``` {{:linux:administration:view-files-in-3-columns-620x405.jpeg?400|Просмотр файлов в 3 колонках}} ### 4. Объединение/просмотр нескольких файлов в нескольких столбцах Следующая команда отображает 5 файлов журналов, объединяя 2 файла в один столбец и сохраняя 2 файла в двух столбцах и только один в левом столбце. ``` [root@localhost ~]# multitail -s 2 -sn 1,3 /var/log/mysqld.log -I /var/log/xferlog /var/log/monitorix /var/log/ajenti.log /var/log/yum.log ``` {{:linux:administration:multiple-view-files-620x406.jpeg?400|Просмотр нескольких файлов}} //Прим.: здесь выводится 5 файлов журналов, но окошка только 4, т.к. в левом окошке выводтся информация сразу двух журналов// ### 5. Как просмотреть файл и выполнить команду Следующая команда показывает 1 файл, в то время как опция ‘-l‘ позволяет выполнять команду в окне: ``` [root@localhost ~]# multitail /var/log/iptables.log -l "ping server.nixcraft.in" ``` {{:linux:administration:run-command-view-file-620x407.jpeg?400|Запустить команду и просмотреть файл}} ### 6. Как объединить/просмотреть два файла в разных цветах Следующая команда объединит 2 файла журнала в одном окне, но выделит каждый файл журнала разным цветом, чтобы вы могли легко понять, какие строки относятся к тому или иному файлу журнала: ``` [root@localhost ~]# multitail -ci green /var/log/yum.log -ci yellow -I /var/log/mysqld.log ``` {{:linux:administration:view-files-in-color-620x407.jpeg?400|Просмотр файлов в цвете}} ## Итог Здесь рассмотрены лишь несколько основных способов использования команды multitail. Полный список опций и клавиш может быть найден на странице руководства multitail или по нажатию клавиши "h" для получения справки во время работы программы. [[https://www.tecmint.com/view-multiple-files-in-linux/|Источник]]