8.5.3 Log File Navigator (LNAV) — средство просмотра файлов журналов

Установка и запуск
Параметры
Синтаксис
Навигация
Фильтры

 
lnav (Log File Navigator) — является расширенным средством просмотра файлов журналов, которое использует любую семантическую информацию, которую можно почерпнуть из просматриваемых файлов, таких как отметки времени и уровни журналов. Используя эту дополнительную семантическую информацию, lnav может делать такие вещи, как чередование сообщений из разных файлов, генерация гистограмм сообщений с течением времени и предоставление горячих клавиш для навигации по файлу.

Навигатор журналов lnav понимает ряд форматов файлов:

  • /var/log/messages — глобальный системный журнал, в котором пишутся сообщения с момента запуска системы, от ядра Linux, различных служб, обнаруженных устройств, сетевых интерфейсов и много другого;
  • /var/log/secure — информация об авторизации пользователей, включая удачные и неудачные попытки входа в систему, а также задействованные механизмы аутентификации;
  • /var/log/dmesg — информация о драйверах устройств. Одноименной командой можно просмотреть вывод содержимого файла. Размер журнала ограничен; когда файл достигнет своего предела, старые сообщения будут перезаписаны более новыми;
  • /var/log/anaconda/anaconda.log — записи, зарегистрированные во время установки системы;
  • /var/log/audit/audit — записи, созданные службой аудита auditd;
  • /var/log/boot.log — информация, которая пишется при загрузке операционной системы;
  • /var/log/cron — отчет службы crond об исполняемых командах и сообщения от самих команд;
  • /var/log/cups — информация обо всем, что связано с печатью и принтерами;
  • /var/log/maillog/ — журнал почтового сервера, используемого на ОС;
  • /var/log/samba/ — логи файлового сервера Samba, который используется для доступа к общим папкам Windows и предоставления доступа пользователям Windows к общим папкам Linux;
  • /var/log/spooler — для представителей старой школы, содержит сообщения USENET. Чаще всего бывает пустым и заброшенным;
  • /var/log/Xorg.0.log — логи X-сервера. Чаще всего бесполезны, но если в них есть строки начинающиеся с EE, то следует обратить на них внимание;
  • /var/log/lastlog — последняя сессия пользователей;
  • произвольные записи с временными отметками;
  • gzip, bzip;
  • журнал VMWare ESXi/vCenter.

Установка и запуск

Для установки lnav выполните команду:

dnf install lnav

Запуск lnav производится командой:

lnav

При вводе команды без параметров lnav автоматически отображает информацию в реальном времени из файла /var/log/messages на основе самых последних отметок времени из всех файлов журналов.

Параметры

Для того чтобы посмотреть информацию об отдельном файле, нужно использовать команду с определёнными параметрами (опциями). Список параметров представлен ниже:

  • -h — распечатать сообщение и выйти;
  • -H — показать на дисплее справку;
  • -I <путь> — дополнительный каталог;
  • -i — установить данный формат файла и выйти;
  • -C — проверить конфигурацию и выйти;
  • -d <имя_файла> — написать отладочные сообщения в указанный файл;
  • -V — распечатать информацию версии;
  • -a — загрузить самый последний файл журнала типов;
  • -r — загрузка старого rotated журнала;
  • -t — добавление метки к линиям данных, чтение в стандартном вводе;
  • -w <имя_файла> — содержимое стандартного ввода в файл;
  • -c <команда> — выполнить команду после того, как файлы были загружены;
  • -f <путь_к _файлу> — выполнить команды в указанный файл;
  • -n — работать без пользовательского интерфейса UI;
  • -q — не печатать сообщения журнала после выполнения всех команд, или когда lnav читает из stdin;

Синтаксис

Синтаксис утилиты выглядит следующим образом:

lnav <опция> <log_файл_1 log_файл_2 ...>

Например, просмотрим информацию из файла /var/log/ipaserver-install.log:

lnav /var/log/ipaserver-install.log

Так же в lnav можно открывать несколько файлов сразу и переключаться между ними:

lnav /var/log/ipaserver-install.log /var/log/krb5kdc.log

Программа умеет напрямую открывать архивный файл:

lnav -r /mnt/archive.tar.gz

Программа показывает гистограмму информативных сообщений, предупреждений и ошибок, если нажать клавишу «i»:

Навигация

Список горячих клавиш для работы с lnav:

  • Shift + D – вперед/назад на 24 часа;
  • Shift + [1-6] – следующая/предыдущая n-я десятая минута часа;
  • Shift + 0 – следующий/предыдущий день;
  • Shift + R – вперед/назад по относительному времени, которое в последний раз использовалось с командой goto;
  • M – отметить/снять отметку с верхней строки;
  • Shift + M – отметить/снять отметку с диапазона строк от последней отмеченной до верхней;
  • Shift + J – отметить/снять отметку со следующей строки после ранее отмеченной;
  • Shift + W – вернуться к предыдущему предупреждающему сообщению;
  • Shift + E – перейти к последнему сообщению об ошибке;
  • Shift + K – отметить/снять отметку с предыдущей строки;
  • C – скопировать отмеченные строки в буфер обмена;
  • Shift + C – очистить отмеченные линии;
  • ? – просмотр/выход из встроенной справки;
  • Q – возврат к предыдущему виду/выход;
  • Shift + P – переключится в/из отображаемого журнала или текстовых файлов;
  • Shift + T – отображать прошедшее время между строками;
  • T – переключиться в/из просмотра текстового файла;
  • I – переключиться в/из просмотра гистограммы;
  • Shift + I – переключиться в/из просмотра гистограммы;
  • V – переключиться в/из представления результатов sql;
  • Shift + V – переключиться в/из представления результатов SQL и перейти к соответствующему столбцу log_line;
  • P – переключить отображение результата парсера журнала;
  • Tab – циклический переход от столбцов к графику в представлении результатов SQL;
  • Ctrl + L – переключиться в режим li-fi. Отображаемые строки журнала будут выгружены на терминал без каких-либо украшений, чтобы их можно было легко скопировать;
  • / — поиск регулярного выражения;
  • ; — выполнить SQL-запрос;
  • : — выполнить внутреннюю команду;
  • Ctrl + ] – прервать.

Фильтры

Если вы хотите отображать только строки, соответствующие определенному шаблону, вы можете сделать это с помощью фильтров. Сначала войдите в командный режим, нажав двоеточие, а затем введите нужный текст с фильтром filter-in, чтобы отображались только строки, содержащие необходимый текст. Например:

filter-in example

Точно так же вы можете использовать фильтрацию, чтобы показать все данные, кроме отфильтрованных строк, для этого введите текст с фильтром filter-out.

filter-out example

После применения фильтра данные с текстом «example» выводиться не будут.

Также можно использовать фильтры hide-lines-after и hide-lines-before.

Фильтр hide-lines-after скрывает строки, которые записаны позже заданного времени.

Фильтр hide-lines-before cкрывает строки, которые записаны раньше заданного времени.

Скрытые строки можно снова показать с помощью команды show-lines-before-and-after.

Эти фильтры будут применяться ко всему файлу, поэтому, пока вы не отмените их (с помощью Ctrl + R), любые другие действия будут выполняться с отфильтрованным журналом, а не с журналом в целом.

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

Print Friendly, PDF & Email