common access_log, trouble

Sergej Kandyla sk.paix на gmail.com
Сб Фев 20 23:26:20 MSK 2010


Maxim Dounin пишет:
> Hello!
>
> On Fri, Feb 19, 2010 at 03:30:56PM +0200, Sergej Kandyla wrote:
>
>   
>> Добрый день.
>> Хочу для всех описанных server вести один дополнительный общий access_log,
>> но если access_log уже задан на уровне определенного server,
>> то в общий access_log (заданный в контексте http)  ничего не попадает.
>>
>>
>> nginx 0.7.65
>>
>> http {
>>       access_log  /var/log/nginx/access.all.log  main_custom;
>>
>> ...
>>   server {
>>        listen     80;
>>        server_name example;
>>        access_log  /var/log/nginx/example.access.log  main;
>>
>>
>> не хотелось бы для каждого из server дублировать один общий access.log...
>>
>> баг, фича, моя глупость?
>>     
>
> Все директивы конфига задающие массивы (access_log, 
> proxy_set_header, fastcgi_param, ...) ведут себя одинаково:
>
> 1. Если на данном уровне конфига соответствующий массив не 
> трогается - весь массив наследуется с предыдущего уровня.
>
> 2. Если на данном уровне массив трогается - используется новый, 
> чистый массив.
>
> Подобное поведение полностью соответствует поведению остальных 
> директив.  Таким образом конструкции вида
>
>     server {
>         access_log /path/to/access_log;
>         error_log  /path/to/error_log;
>
>         location /something {
>             access_log /path/to/another/access_log;
>             error_log  /path/to/another/error_log;
>
>             ...
>         }
>
>         ...
>    }
>  
> работают совершенно одинаково и предсказуемо - переопределяют логи 
> для конкретного location'а.  И можно не думать о том что 
> access_log'ов вообще говоря можно определить несколько, а 
> несколько error_log'ов определить нельзя.
>
> Maxim Dounin
>
>   

спасибо большое, все ясно!
прописал дополнительный лог для каждого из server.






Подробная информация о списке рассылки nginx-ru