Просмотр логов с помощью MultiTail

Unix

Автор: Александр Степанов

12 мая 2012 г., 12:21:35  1771


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

 

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

  • терминал может разделяться на окна как горизонтально, так и вертикально;
  • окна можно создавать, перемещать, закрывать, объединять и временно скрывать;
  • в одно окно можно выводить более одного файла;
  • поиск как в одном окне, так и во всех сразу;
  • фильтрация строк перед выводом при помощи регулярных выражений;
  • мерцание экрана или звуковое оповещение при обнаружении определённого текста;
  • подсветка цветом текста на основе регулярных выражений;
  • направление вывода в текстовые файлы (работает, подобно tee);
  • работа в режиме syslog-сервера;
  • подавление вывода дублирующихся строк;
  • изменение конфигурации MultiTail «на лету» в ответ на изменения в наблюдаемом файле;
  • наблюдение за потоком стандартного ввода;
  • преобразование IP-адресов в имена хостов, значений errno в текстовые описания, etc;
  • разнообразные варианты обрезки длинных строк: справа, слева, определённую часть;
  • горизонтальная и вертикальная прокрутка, режим переноса длинных строк;
  • и многое, многое другое!

В Ubuntu достаточно команды:

sudo apt-get install multitail

Во FreeBSD из портов можно установить так:

# portsnap fetch update
# cd /usr/ports/sysutils/multitail
# make install clean

 

Вывод логов Squid

$ multitail /var/log/squid/access.log

Несколько некрасиво получается с учётом переноса строк. Можно попросить multitail обрезать строки справа (оставлять только начало строки):

$ multitail -p l /var/log/squid/access.log

 

Следим за пингом google.com:

$ multitail -l "ping google.com"

 

Просмотр лога Apache. Опцией «-cS apache» сообщаем multitail, что при выводе лог-файла необходимо использовать цветовую схему «apache». Полный список поставляемых в комплекте цветовых схем можно получить в /etc/multitail.conf.

$ multitail -cS apache /var/log/apache2/access.log

Поиск и подсветка при помощи регулярных выражений:

$ multitail -ec '"GET[^"]+"' -cS apache /var/log/apache2/access.log