Armazenando nome de usuário em logs nginx

9

Existe uma maneira pela qual o nome do usuário ou o ID do usuário podem ser armazenados em logs nginx. Eu tentei inserir $ remote_user na diretiva log_format mas parece não funcionar.

    
por nishant 10.06.2014 / 20:37

1 resposta

9

Sim, isso é possível. No entanto, como você não está usando a autenticação básica HTTP, você precisará do aplicativo para informar ao Nginx qual é o nome de usuário atual. Adicione um cabeçalho de resposta ao longo das linhas de:

X-Username: nishant

Em seguida, na sua diretiva log_format , use a variável $sent_http_x_username . Esse comportamento está documentado aqui: link

Também recomendo remover esse cabeçalho extra da resposta antes de enviá-lo ao cliente. Você pode fazer isso com o NginxHttpHeadersMoreModule .

more_clear_headers 'X-Username';
    
por 10.06.2014 / 20:43