Skip to content

1lushaa/logs-analyzer

Repository files navigation

Анализатор логов NGINX

Обрабатывать и анализировать лог-файлы сервера вручную может быть очень трудоемким процессом, для упрощения этой задачи разработана программа-анализатор логов. Программа конфигурируется из командной строки, позволяет собирать различные метрики из логов и анализировать их.

Функциональность программы

  • Подсчитывает общее количество запросов.
  • Определяет наиболее часто запрашиваемые ресурсы.
  • Определяет наиболее часто встречающиеся коды ответа.
  • Рассчитывает средний размер ответа сервера.

Аргументы командной строки

Обязательные

  • --path
    Путь к одному или нескольким NGINX лог-файлам в виде:

Необязательные

  • --from и --to

    Временные параметры в формате ISO 8601. Позволяют указать временной диапазон.

  • --format

    Формат вывода результата: markdown или adoc (по умолчанию markdown).

  • --filter-field

    Поле, по которому следует фильтровать логи перед сбором статистики.

  • --filter-value

    Значение поля, по которому логи должны быть отфильтрованы перед сбором статистики.

Обратите внимание, что --filter-field и --filter-value должны идти подряд. Вы можете указать более одной пары ключей.

Описание входных и выходных данных

Входные данные

  • Путь к лог-файлам: локальный путь (с поддержкой glob) или URL.
  • Опциональные параметры.
  • Формат вывода: markdown или adoc (опционально).

Выходные данные

  • Текстовый отчёт в выбранном формате с анализом логов.

Примеры вызова программы

  1. Анализ всех логов в папке logs/2024* за период с 31 августа 2024 года и вывод результата в формате Markdown:

    analyzer --path logs/2024* --from 2024-08-31 --format markdown

  2. Анализ логов с удалённого источника и вывод результата в формате AsciiDoc:

    analyzer --path https://raw.githubusercontent.com/elastic/examples/master/Common%20Data%20Formats/nginx_logs/nginx_logs --format adoc

  3. Анализ логов по шаблону пути:

    analyzer --path logs/**/2024-08-31.txt

Пример результата работы программы

Общая информация

Метрика Значение
Файл(-ы) access.log
Начальная дата 31.08.2024
Конечная дата -
Количество запросов 10 000
Средний размер ответа 500b
95p размера ответа 950b

Запрашиваемые ресурсы

Ресурс Количество
/index.html 5 000
/about.html 2 000
/contact.html 1 000

Коды ответа

Код Имя Количество
200 OK 8 000
404 Not Found 1 000
500 Internal Server Error 500

About

NGINX logs analyzer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages