2.20.2.2. Аналіз логів у GoAccess
GoAccess — безкоштовна консольна програма з відкритим вихідним кодом для перегляду і аналізу логів веб-сервера. Призначена для Linux і macOS. У Windows можна використовувати її реалізацію CowAxess, що працює через Cygwin, або безпосередньо через WSL.
Для аналізу логів за допомогою GoAccess їх потрібно попередньо завантажити.
Інтерактивний режим
Запуск
- В консолі виконайте команду, підставивши замість
path/to/access.log
шлях до файлу логу:goaccess path/to/access.log
Якщо потрібно проаналізувати відразу кілька логів, вкажіть шляхи до них через пробіл:
goaccess path/to/access.log path/to/access.log.1
- За допомогою стрілок і клавіші Space виберіть «NCSA Combined Log Format» і натисніть Enter.
- Дочекайтеся завершення обробки логу.
Модулі
- «Unique visitors per day — Including spiders» — кількість унікальних відвідувачів на день, включаючи павуків.
- «Requested Files (URLs)» — запитувані URL.
- «Static Requests» — запити до статичних файлів.
- «Not Found URLs (404s)» — запити, за якими сервер повернув відповідь
404
. - «Visitor Hostnames and IPs» — IP-адреси, країни і хости відвідувачів.
- «Operating Systems» — операційні системи відвідувачів.
- «Browsers» — браузери відвідувачів.
- «Time Distribution» — розподіл запитів по годинах для.
- «Virtual Hosts» — віртуальні хости. Модуль буде відображатися тільки якщо у логу є відповідна інформація.
- «Referrers» (за замовчуванням вимкнений) — URL, з яких прийшли відвідувачі.
- «Referring Sites» — сайти, з яких прийшли відвідувачі.
- «Keyphrases» (за замовчуванням вимкнений) — ключові фрази з пошукових запитів Google, кеша Google (підтримуються тільки запити, що виконувалися по HTTP).
- «HTTP Status Codes» — відповіді сервера.
- «Remote User» — ідентифікатори осіб, які запитують файли з HTTP-аутентифікацією. Модуль буде відображатися тільки якщо у логу є відповідна інформація.
- «Geo Location» — країни відвідувачів.
Клавіші керування
- F1 або h — довідка.
- F5 — оновлення інформації в головному вікні.
- q — вихід з програми або згортання активного модуля.
- o або Enter — розгортання активного модуля.
- 0…9 та Shift+0…5 — активація модуля по його номеру (Shift потрібно утримувати для модулів з номерами 10+).
- ↑ — прокрутка вмісту головного вікна вгору.
- ↓ — прокрутка вмісту головного вікна вниз.
- j — переміщення курсору всередині розгорнутого модуля вниз.
- k — переміщення курсору всередині розгорнутого модуля вгору.
- c — встановлення або зміна колірної схеми.
- Ctrl+f — прокрутка всередині активного модуля на один екран вперед.
- Ctrl+b — прокрутка всередині активного модуля на один екран назад.
- Tab — перемикання на наступний модуль.
- Shisft+Tab — перемикання на попередній модуль.
- s — налаштування сортування для активного модуля.
- / — пошук по всім активним модулям (можна використовувати регулярні вирази).
- n — пошук наступного збігу.
- g — перехід до першого елементу модуля або вгору головного вікна.
- Shift+G — перехід до останнього елемента модуля або вниз головного вікна.
Генерація HTML-звіту
Підготовка
--log-format='%h %^[%d:%t %^] "%r" %s %b "%R" "%u"' --date-format='%d/%b/%Y' --time-format='%T'
.
Перед генерацією HTML-звіту вкажіть формат логу, дати і часу в конфігураційному файлі GoAccess:
- Дізнайтеся шлях до конфігураційного файлу GoAceess:
goaccess --dcf
- Відкрийте конфігураційний файл для редагування:
nano шлях/до/конфігураційного/файлу
- Додайте в нього три рядки:
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u" date-format %d/%b/%Y time-format %T
- Збережіть зміни натисканням Ctrl+O.
- Вийдіть із редактора натисканням Ctrl+X
Генерація
Для генерації HTML-звіту виконайте команду:
goaccess path/to/access.log -a -o path/to/report.html
В команді:
path/to/access.log
— шлях до файлу логу.path/to/report.html
— назва звіту і шлях, куди його потрібно зберегти.
Отриманий файл відкрийте в будь-якому браузері. У звіті буде наочно відображено інформацію за всіма доступними модулями з можливістю налаштування відображення.