FreeBSD nginx + ngxtop (анализ access файла)
FreeBSD nginx + ngxtop (анализ access файла)
Сайт ПО - https://github.com/lebinh/ngxtop
Установка
pkg install py27-sqlite3
pip install ngxtop
Некоторые опции:
-l <file> - путь до log файла (nginx\apache2)
-t <seconds> - интервал обновления в секундах
-n <number> - количество выводимых строк
-o <var> - сортировка (по умолчанию count)
-i <filter-expression> - фильтр
Переменные вывода:
body_bytes_send
http_referer
http_user_agent
remote_addr
remote_user
request
status
time_local
Запуск анализа логфайла из конфигурации
ngxtop -c /usr/local/etc/nginx/conf.d/my-virtual-host
Запуск анализа access логфайла
ngxtop -l /var/log/nginx/site.ru.access.log
running for 54 seconds, 4574 records processed: 84.55 req/sec
Summary:
| count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|---------+------------------+-------+-------+-------+-------|
| 4574 | 20380.931 | 4459 | 105 | 10 | 0 |
Detailed:
| request_path | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|------------------------------+---------+------------------+-------+-------+-------+-------|
| /acc/block/ | 469 | 153.789 | 469 | 0 | 0 | 0 |
| /qap/questions/ | 245 | 4486.539 | 245 | 0 | 0 | 0 |
| /regular/doc_ajax/ | 193 | 5657.632 | 193 | 0 | 0 | 0 |
| /static/i/menu-complaint.png | 120 | 581.117 | 119 | 1 | 0 | 0 |
Помощь
ngxtop -help
Примеры:
Вывести топ подключившихся ip адресов
ngxtop top remote_addr -l /var/log/nginx/site.ru.access.log
ngxtop --group-by remote_addr -l /var/log/nginx/site.ru.access.log
Соединения с кодом ответа 200, показать их реферер
ngxtop -i 'status == 200' print remote_addr request status http_referer -l /var/log/nginx/site.ru.access.log
Анализировать уже записанный файл
ngxtop --no-follow -l /var/log/nginx/site.ru.access.log
Если получим ошибку типа
ImportError: /usr/local/lib/libsqlite3.so.0: Undefined symbol "fdatasync"
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221672
Применение патчей безопасности
Получаем обновления:
freebsd-update fetch
Установка обновлений:
freebsd-update install
shutdown -r now
После перезагрузки запускаем повторную установку:
freebsd-update install
Комментарии пользователей
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!