Обрабатывать и анализировать лог-файлы сервера вручную может быть очень трудоемким процессом, для упрощения этой задачи разработана программа-анализатор логов. Программа конфигурируется из командной строки, позволяет собирать различные метрики из логов и анализировать их.
- Подсчитывает общее количество запросов.
- Определяет наиболее часто запрашиваемые ресурсы.
- Определяет наиболее часто встречающиеся коды ответа.
- Рассчитывает средний размер ответа сервера.
--path
Путь к одному или нескольким NGINX лог-файлам в виде:- Локального шаблона (например,
logs/2024*). - URL (например, ссылка на пример логов).
- Локального шаблона (например,
-
--fromи--toВременные параметры в формате ISO 8601. Позволяют указать временной диапазон.
-
--formatФормат вывода результата:
markdownилиadoc(по умолчаниюmarkdown). -
--filter-fieldПоле, по которому следует фильтровать логи перед сбором статистики.
-
--filter-valueЗначение поля, по которому логи должны быть отфильтрованы перед сбором статистики.
Обратите внимание, что --filter-field и --filter-value должны идти подряд. Вы можете указать более одной пары ключей.
- Путь к лог-файлам: локальный путь (с поддержкой
glob) или URL. - Опциональные параметры.
- Формат вывода:
markdownилиadoc(опционально).
- Текстовый отчёт в выбранном формате с анализом логов.
-
Анализ всех логов в папке
logs/2024*за период с 31 августа 2024 года и вывод результата в формате Markdown:analyzer --path logs/2024* --from 2024-08-31 --format markdown -
Анализ логов с удалённого источника и вывод результата в формате AsciiDoc:
analyzer --path https://raw.githubusercontent.com/elastic/examples/master/Common%20Data%20Formats/nginx_logs/nginx_logs --format adoc -
Анализ логов по шаблону пути:
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 |