Трекинг в мультисерверной среде
TDz TDz
tdz at modestus.org
Fri May 25 06:49:56 MSD 2007
Столкнулся с довольно стандартной проблемой - создавая распределённое
приложение на стадии тестирования хочется иметь побольше деталей о том как
именно была сгенерирована страница
Расклад у нас примерно следующий - само приложение на Ruby и сервится
монгрелами, выдаёт статичный HTML код который полностью ложится в memcached.
А nginx занимается тем что получив запрос пытается получить страницу из кеша
и в случае неудачи проксирует запрос на один из монгрелов
Это работает быстро и надёжно но для дебага мне хотелось бы чтоб nginx к
концу выдачи приписывал несколько деталей в виде комментария - идентификатор
самого вебсервера, если страница получена из кеша то сообщение мол получил
из кеша, если была отдана с монгрелов то с какого именно и за какое время.
Переменные эти все в nginx есть но я что-то не соображу как это правильно
вывести. Насколько я понимаю можно использовать ngx_http_sub_module - тогда
переменные можно вписывать просто в текст. А можно через
ngx_http_addition_module но тогда надо использовать либо перл либо SSI
насколько я понимаю для собирания нужной информации в файл к тому же
переменные например адрес конкретного монгрела доступны в пределах модуля
upstream и не знаю доступны ли они вне его
Сейчас используется временный конфиг такого вида грубо
location / {
set $memcached_key "project:production:$uri";
memcached_pass localhost:11211;
error_page 404 = /ruby;
error_page 502 = /ruby;
}
location /ruby {
internal;
proxy_pass http://mongrels;
}
Посоветуйте плз как вернее организовать вывод таким образом чтоб поместить в
него всю необходимую информацию, можно ли переменные будет просто
использовать или их надо сначала глобально дефинировать и в пределах
отдельных модулей инициализировать etc
Заранее благодарен
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20070525/adc2a331/attachment.html>
More information about the nginx-ru
mailing list