Для начала поставим pv:
[email protected]:~# aptitude install pv
Самый простой пример:
[email protected]:~# tail -f /var/log/nginx/access.log | pv -lr
Где-то там внизу у нас замелькают какие-то цифры. При желании их можно разглядеть. Плюс этой команды в том, что мы можем одновременно видеть, что происходит в логе.

Представим, что нам не нужно смотреть, что происходит в самом логе. Сделаем так:
[email protected]:~# tail -f /var/log/nginx/access.log | pv -lr >/dev/null
[3.94/s ]

Всё хорошо, но такая статистика — цифры в вакууме. Значение будет скакать от нуля до пикового.
Нам нужна усредненная статистика, по количеству строк в секунду, за последние 30 секунд:
[email protected]:~# tail -f /var/log/nginx/access.log | pv -lr -i 30 >/dev/null
[0.933/s ]

Первое значение появится через 30 секунд, потом каждые 30 секунд будет обновляться. Такое значение колеблется намного меньше и ему уже можно верить при озвучивании цифр.
Запустив такую штуку в скрине с -i 86400 мы получим усредненное значение за сутки.

Ну и напоследок. Вам никто не запрещает использовать grep. Например, чтобы отследить количество обращений к одной странице или количество хитов с определенного адреса.
Делать это просто:
[email protected]:~# tail -f /var/log/nginx/access.log | grep 192.168.0.10 | pv -lr -i 30 >/dev/null
[0.125/s ]
Здесь мы видим, что хост 192.168.0.10 последние 30 секунд обращался к нам с частотой 0.125 запроса в секунду.

Или так:
[email protected]:~# tail -f /var/log/nginx/access.log | grep "\"-\"" | pv -lr -i 30 >/dev/null
[137.124/s ]
137.124 запроса в секунду с пустым реферером. Имеет смысл запретить на время коннекты с пустым реферером, не правда ли?

И grep -v тоже никто не запрещает использовать:
[email protected]:~# tail -f /var/log/nginx/access.log | grep -v "/index.php" | pv -lr -i 30 >/dev/null
[15.541/s ]
Здесь мы видим 15.541 запроса в секунду к страницам, кроме index.php (в т.ч. и без index.php?чтототам).

Источник

0 0 vote
Article Rating