Re: NGINX - собрать статистику по каждому домену/server-y
Илья Шипицин
chipitsine at gmail.com
Mon Jun 17 12:44:30 UTC 2013
можно как-то так делать (держим в разделяемой памяти счетчики, которые
увеличиваем при обращении, снимаем счетчики через http) .....
#########################
lua_shared_dict focus 10M;
server {
listen 1.1.1.1:80;
server_name a.b.c;
location / {
proxy_pass http://cleared.backend;
log_by_lua '
local newval, err =
ngx.shared.focus:incr(ngx.var.upstream_addr, 1)
if not newval and err == "not found" then
ngx.shared.focus:add(ngx.var.upstream_addr, 1)
end
';
}
location /status {
content_by_lua '
ngx.say("clear: ", ngx.shared.focus:get("192.168.1.1:80") )
';
}
}
15 июня 2013 г., 15:51 пользователь Валентин Росавицкий
<valintinr at tangramltd.com> написал:
> Здравствуйте.
> Имеется такой себе кластер который фильтрует 'плохой' трафик. Фронтэндом
> стоит nginx который после всех проверок (кука и iptables-правила) проксирует
> 'чистый' трафик на бэкенды. Стоит задача как бы его правильно/просто
> собирать статистику по каждому проксируемому домену, например active
> connections с stub_status. Он у нас работает в отдельном server {};
> проксируемые домены - каждый в своем server {};. Если я правильно понял то
> stub_status собирает для всего http {}; а нужно для server-ов собирать. Что
> можете подсказать?
>
> P.S Не обязательно через stub_status собирать, можно и другие варианты. У
> нас просто сейчас так, потом в rrd базу запихиваем и получается почти
> удобно.
>
> --
> С уважением,
> Валентин Росавицкий
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
Подробная информация о списке рассылки nginx-ru