Comportamento estranho com varnishlog e redirecionamento de fluxo

1

Eu escrevi um ajudante para depurar a instalação do verniz e o usei no servidor de produção e desenvolvimento. O estranho é que eu encontrei um comportamento diferente mesmo que a configuração seja quase idêntica (exceto hardware).

O comando é:

varnishlog > /var/log/v1.log & curl -I $URL; kill $!

Em nosso servidor de produção, ele funciona como esperado: varnishlog inicia como um processo em segundo plano e redireciona sua saída para /var/log/v1.log - então curl é executado e quando é feito varnishlog é eliminado (embora não veja a mensagem 'terminada' até o próximo comando ser executado).

Em nosso servidor de desenvolvimento, o comando é executado e a mensagem 'terminada' aparece logo após a saída de crul . No entanto, /var/log/v1.log está vazio.

Os dois servidores uname -srvmo retornam Linux 2.6.32-358.18.1.el6.x86_64 #1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 GNU/Linux e ambos estão executando CentOS release 6.4 (Final) .

EDITAR : parece que varnishlog > /var/log/v1.log não funciona. Nem varnishlog > /var/log/v1.log 2>&1 ou varnishlog | tee /var/log/v1.log (este último também não produz saída de produto para console). Outros comandos (por exemplo, echo 'test' > /var/log/v1.log ) funcionam como esperado. A versão do verniz é exatamente a mesma em ambas as máquinas ( varnish-3.0.5 revision 1a89b1f ).

    
por Bart Platak 04.07.2014 / 12:08

0 respostas