Como registrar o nome do backend que respondeu a um pedido

1

Estou usando varnishncsa para registrar solicitações que estão demorando para serem respondidas em meus servidores de back-end usando o seguinte comando:

varnishncsa -F '%t "%r" %s %T' | awk '$7 > 10 {print}'

Eu estava tentando adicionar informações sobre o nome do back-end, mas isso não está sendo exibido na saída varnishncsa :

sub vcl_backend_response {
    std.log("backend_name:" + beresp.backend.name);
}

o que estou fazendo de errado?

    
por hvelarde 16.03.2017 / 18:31

1 resposta

1

Não funciona para você porque varnishncsa usa o modo "cliente" por padrão. Ative-o usando a opção -b .

Posteriormente, isso funcionará:

varnishncsa -b -F '%t "%r" %s %T %{VCL_Log:backend_name}x' | awk '$7 > 10 {print}'

Você pode querer verificar explicação completa que inclui otimização adicional para consultar solicitações lentas de back-end.

    
por 21.03.2017 / 19:35