Понедельник, 28 Апрель 2008

Nginx: читаем статистику

В nginx есть модуль http_stub_status_module, который рисует статистику.

Обычно статистика выглядит так:

Active connections: 268 
server accepts handled requests
 9634632 9634632 9616293 
Reading: 170 Writing: 98 Waiting: 0

Для не подготовленного человека она не понятна. Но если копнуть чуть‑чуть глубже то все становится очевидно.

Все данные в статистику пишутся через общую память, т.е. она общая, должна быть, для всех worker’ов. Если смотреть на шаблон вывода мы получим:

Active connections: ngx_stat_active
server accepts handled requests
 ngx_stat_accepted ngx_stat_handled ngx_stat_requests
Reading: ngx_stat_reading Writing: ngx_stat_writing Waiting: ngx_stat_waiting

Описание макросов:

  • ngx_stat_active — Сколько сейчас обслуживается клиентов. Прибавляется 1 после accept() для сокета и вычитается после close(). Так же это сумма reading + write + waiting соединений.
  • ngx_stat_accepted — Сколько всего было accept()’нуто сокетов. Просто счетчик.
  • ngx_stat_handled — Сколько было обработано сокетов, а не закрыто сразу.
  • ngx_stat_requests — Сколько было обслужено запросов. Т.к. в одном accept()’нутом сокете может быть обработано больше 1 запроса (keep-alive).
  • ngx_stat_reading — Сколько соединений читает заголовок запроса.
  • ngx_stat_writing — Сколько соединений уже прочитало заголовок запроса и пошло обрабатываться, т.е. если оно читает body, или с upstream’ом общается — будет висеть во writing.
  • ngx_stat_waiting — Сколько keepalive соеденений висит.

Написано в: 17:01 | 0 комментариев | | теги: , , | постоянная ссылка |
Добавить пост в:   Delicious Reddit Slashdot Digg Technorati Google


Последние комментарии

Пингбэки

Комментарии

К этой публикации комментариев нет

Форма комментирования для «Nginx: читаем статистику»

Обязательное поле. Не больше 30 символов.

Обязательное поле