Passando um cabeçalho de registro de data e hora para servidores upstream com Nginx

1

Gostaria que meu balanceador de carga Nginx enviasse um timestamp em um cabeçalho para os servidores upstream.

Eu tentei algo assim:

proxy_set_header X-Start-Time $msec;

É claro que $ msec é uma variável de log e o Nginx dá um erro:

Restarting nginx: [emerg]: unknown "msec" variable
    
por Allan C 30.07.2010 / 00:31

1 resposta

1

$msec é de fato uma variável que vive apenas durante a gravação de log.

A solução mais fácil seria construir o Nginx com o módulo Perl e definir uma variável suportada pela sub-rotina Perl:

# at 'http' context
perl_set $unix_timestamp 'sub {
  time();
}';

# where you want it:
proxy_set_header X-Start-Time $unix_timestamp;
    
por 30.07.2010 / 07:34

Tags