Как смотреть журналы событий Linux

Введение.

 В статье блога рассматривается возможность интеграции консольного просмотровщика логов lnav для анализа журналов Linux, в качестве примеров используются действующие журналы работы Kablink, appserver и catalina, в качестве стенда используется сервер ALT Linux.

 Встроенный в административную панель Kablink, системная кнопка отчёты, даёт администратору возможность контроля работы пользователей и системы в целом, но когда Портал выключен по различным причинам, сделать анализ журнал Tomcat-Apache становится невозможно. Существующие текстовые редакторы tail, cat, less … не позволяют уверенно ориентироваться в сложных системных сообщениях. Специальные программы для анализа логов, Rsyslog, ElasticsearchFluentd… требуют серьёзного изучения, сложны в настройках и отвлекают для своей работы дополнительные ресурсы. Анализатор lnav  — инструмент использующий облегчённую систему визуализации аналитики входящих сообщений.

  Просмотровщик lnav «всеядный» — может работать практически со всеми известными форматами журналов, на ‘лету’ анализировать, читать, индексировать и выводить на экран полученные результаты. Содержимое сообщений выходного файла журнала, объединяется в одно целое представление, на основе отметок времени происходящих событий.

 Регулярный мониторинг журналов, с поморью lnav , поможет администратору улучшить эксплуатационные характеристики своих приложений, расширяя потенциальные возможности управления программных комплексов.

Основные возможности Lnav

  • просмотр одного журнала
  • просмотр и извлечение сообщения нескольких журналов
  • автоматическое определение формата журнала
  • фильтрация сообщений журнала
  • наличие временных отметок журнала
  • включение режима pretty-print view
  • анализ журналов с использованием SQL запросов

Подготовка

  • Стенд
    • ALT Linux сервер, имя lin-lnav; ip-10.0.2.23;

 Развернуть lnav можно загрузив пакет из официального репозитория, с помощью менеджера пакетов synaptic, или скачать с сайта разработчика Lnav.

Если система безопасности организации требует, для установки lnav, использовать официальный репозиторий, консультируетесь со специалистами по безопасности ОС вашей организации.

# apt-get update
# apt-get install lnav
# ...

Если пакет загружен с сайта, выполните действия, как показано ниже.

# apt-get install lnav-x.x.x-x.x86_64.rpm

Теперь надо «нацелить» lnav на каталог, где хранятся журналы Kablink с помощью созданного для этого, запускающего сценария lnkb.

#!/bin/bash
# просмотр анализ журнала appserver.log
lnav /opt/novell/teaming/apache-tomcat/logs/appserver.log
# просмотр анализ журнала catalina.out
lnav /opt/novell/teaming/apache-tomcat/logs/catalina.out

Поместить сценарий lnkab в каталог /usr/local/bin

# ls -l /usr/local/bin
-rwxr-xr-x root root lnkb

Запускаем lnav командой…

$ sudo lnkb

Горячие клавиши Lnav.               

  • ПРОСТРАНСТВЕННАЯ НАВИГАЦИЯ
    PgUp — вниз на страницу
    PgDn  — вверх на страницу
      — вверх на одну строку
    — вниз на одну строку
    l → — право половина страницы
    Shift + l — Право десять столбцов
    n|N — следующий / предыдущий поисковый запрос
    > <  — следующий / предыдущий поисковый запрос по горизонтали
    s|S — следующее / существенное замедление в скорости сообщений журнала формат экрана
    T — отключение s
    u|U  — перемещение по закладкам, вверх низ
    w|W — поиск предупреждений начало, конец
    e|E — поиск ошибок начало, конец
    g|G Начало журнала / конец журнала
    { }  — предыдущее / следующее место в истории
  • ХРОНОЛОГИЧЕСКАЯ НАВИГАЦИЯ
    d|D — переместить на 24h верх или низ
    1-6|Shift 1-6  — следующая |предыдущая 10 мин часа
    7-8  — предыдущая / следующая минута
    0|Shift 0  — предыдущий / следующая день
  • ЗАКЛАДКИ
    m — пометить / снять отметку с верхней строки
    M — пометить / снять отметку диапазона строк от последней помеченной до верхней
    j — пометить следующей строки после ранее отмеченной вниз
    k — снять отметку с предыдущей строки вверх
    c — копировать отмеченные строки в буфер обмена
    C — очистить отмеченные линии
  • ДИСПЛЕЙ
    q — выход возврат предыдущий
    P — симпатичный видов
    T — отображение прошедшего времени между строками
    — гистограмма
    — откл.гистограммы
    p — разбор строки
    L — отключение lnav функций вид становится как простой терминал
    Ctrl-w — отмена переносов всё в одном экране
    Ctrl + f — включение / выключение всех фильтров в текущем представлении
    x  — переключить скрытие полей сообщения журнала. Скрытые поля будут заменены тремя маркерами и выделены желтым цветом.
    СЕССИЯ
    Ctrl + R — сброс утекшей сессии
  • ЗАПРОС
    / —  Поиск строк, соответствующих регулярному выражению
    / — повторное нажатие отменяет поиск

 После получения представления и общих сведений о работе и назначении горячих клавиш lnav, рассмотрим применение его на практике, анализируя сообщений основного appserver.log.

 Практика работы с Lnav.

 Набрав команду $ sudo lnkb  попадаем в окно журнала appserver.log, где указано расположение журнала, анализ которого нас интересуют.

Если используется буфер clipboard, для запуска lnav ввести $ sudo -E lnkab .

 Навигатор позволяет сортировать сообщения, выделяя из них строки со статусом WARN или ERROR, используя ← → клавиши перемещать строки в право или в лево, искать информацию выбирая строки с помощью клавиш ↓ ↑листать страницы сообщений с помощью клавиш PgDn PgUp , быстро переходить в начало или конец журнала.

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

 Возможность делать отметки в сообщениях журнала с помощью закладок, делает навигатора lnav ещё привлекательней. Закладки можно ставить на одну строку или выделять несколько строк перемещаясь вверх или вниз по журналу, поиск закладок осуществляется с помощью клавиш u|U. Предусмотрена возможность выделения диапазона строк.

Для дальнейшего разбора, все закладки можно копировать в буфер clipboard, очистить журнал от пометок закладок можно с помощью сочетания клавиш Shift + C.

 Управлять выводимой, дисплейной, информации в удобном для восприятия виде, ещё одна хорошая особенность lnav. Нажимая последовательность клавиш Shift+p мы переключаемся в режим Pretty-Print View. Нажимая клавишу p, переходим в режим просмотра журналов XML и JSON форматов. Можно включить подробную хронологическую историю, выводимых сообщений, с помощью Shift+t и плавно перемещаться в диапазоне времени нажимая s↑S↓. Построение гистограмм, используя кнопки, iI, позволяет оценить наличие сообщений и их количество со статусом Error или Warn, Нажимая клавиши z Z,, мы можем увеличит или уменьшить временной ряд гистограммы. Иногда, для отчёта, требуется показать информацию в привычном терминальном виде, без режима подсветки синтаксиса строк журнала, используя сочетанием клавиш Ctrl+l. Если надо вывести компактный экран сообщений журнала, без переносов, нажимаем комбинацию кнопок Ctrl^w. Вернутся в главное окно lnav, или выйти из режима просмотровщика, можно используя клавиши q Q.

 Вся информационная история о манипуляциях пользователя с журналом, сохраняются в журнале сессии. При следующей загрузки пользователем исследуемого лога, находясь в своём профиле, сеанс lnav, восстанавливает некоторые режимы и позиции предыдущей истории работы lnav, такие как:

  • положение в файлах для просмотра
  • информацию о поиске
  • фильтры или подсветки фильтров
  • закладки
  • настройки временных хронологии

 Сбросить историю текущей сессии можно воспользовавшись сочетанием клавиш Ctrl^R, в командной строке экрана lnav.

 Пожалуй самым востребованным режимом при разборе сообщений журнала, является поиск. В lnav этот функционал встроен в командную строку и имеет привычный знак-символ / , выполняющий двойное значение — включает и выключает режим поиска.

 На этом обзор навигатора lnav заканчивается, остаётся только напомнить, что всё сказанное относится к разбору сообщений журналов Kablink, и поэтому другие возможности lnav опушены, чтобы не усложнять понимание возможностей использования lnav & Kablink.

Заключение.

 Для проведения анализа и контроля работы ОС Linux, создано много аналитических программ. Большинство из которых, имеют собственные программы для анализа журналов и входят в ‘коробочные’ версии при базовой установке. Все они, как правило, имеют графический интерфейс и работают только когда запущенна базовая программа. Просмотр и анализ журналов событий, происходит периодически, как правило, когда всё работает без сбоев. Но, такая работа может прерываться неожиданными событиями — приложения не запускаются, логи нельзя просмотреть, телефон надрывается, в дверь стучат возмущённые пользователи. Здесь может пригодится небольшой консольный просмотровщик. Он доберётся до любого журнала, ему не нужен тяжёлый интерфейс GUI, главное что бы сервер «дышал». Просмотровщик lnav не занимает много места, не требует особых навыков в работе и большого времени на изучение. Необходима небольшая практика в использовании и вот у вас в руках ещё один инструмент, который может выручить админа в критическую минуту.

Полезные ссылки.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Copyright © 2011-2024
Все права защищены.
При перепечатке указать источник: kabtim.ru
Контакты