Просмотр apache и nginx логов в Linux

GoAccess (https://goaccess.io/) — это приложение веб-аналитики с открытым исходным кодом для Unix-подобных операционных систем. Он имеет как текстовый, так и пользовательский интерфейс веб-приложения. Он может предоставлять аналитику в реальном времени, постоянно отслеживая журналы веб-сервера.

Для быстрого анализа apache и nginx логов достаточно давно использую goaccess.

Сразу стоит отметить, что данная утилита лучше подойдет для анализа небольших логов, до 500 МБ. В случае, если логи будут более 500 МБ, то на анализа уходит достаточно много времени.

Установка goaccess

Просто выполнить команду в терминале:

sudo apt install ncdu

Использование goaccess

Скорость обработки файла goaccess зависит от его размера, поэтому не рекомендую запускать анализ на рабочем сервере, лучше перенести файл на локальную машину и запустить анализ лога на ней.

Утилиту возможно использовать в 2 вариантах:

  • отчет в консоли
  • отчет в html-файл (данный вариант для меня более предпочтителен, так как можно поделиться файлом с разработчиком)

Команда для отображения отчета в консоли:

goaccess --log-format=COMBINED site1.log

Результат выполнения команды:

Использование goaccess. Команда для отображения отчета в консоли

Для навигации по файлу клавиши стрелок вверх и вниз, а также 1, 2, 3, 4, 5, 6, 7, 8, 9

Команда для сохранения отчета в HTML-файл:

В данном формате имеется 2 представления — просто сохранение в файл, и постоянное обновление файла в реалтайме (в случае, если вы читаете файл на сервере)

goaccess site1.log -o report1.html --log-format=COMBINED
goaccess site1.log -o report1.html --log-format=COMBINED --real-time-html

Результат выполнения команды:

Использование goaccess. Команда для сохранения отчета в HTML-файл