varnishlog acessando o corpo do POST (verniz 4.x)

2

executando varnishd (revisão 3041728 do verniz-4.1.0) , e registrando usando

varnishlog -q "BerespStatus >= 500"

Gostaria de saber se é possível imprimir o conteúdo do POST. Existe um serviço XML-RPC em execução no servidor e, em algum momento, ele retorna 500. Em log is nothing, gostaria de saber qual método XMLRPC é problemático.

Alguma sugestão?

    
por 2ge 06.11.2015 / 15:40

1 resposta

0

Varnish (e, portanto, varnishlog & varnishncsa) não dá acesso ao corpo http na solicitação ou na resposta. Portanto, isso não é possível usando verniz de baunilha.

Dito isto, é possível inserir o C in-line código em seu VCL. Portanto, tecnicamente, você pode acessar os dados do POST usando algum código C personalizado e usar std. registre para escrever os bits que interessam aos registros.

Parece que existem alguns VMODs existentes que acessam os dados POST (por exemplo, vmod_bodyaccess ), mas você provavelmente precisará fazer mais análise do que isso para obter o método XML-RPC.

Aviso de isenção : eu não recomendaria ir a qualquer lugar perto da inline C, a menos que você realmente saiba o que está fazendo. Além disso, eu não tentei nenhum VMODs mencionado aqui, então não posso dizer o quão apropriado eles são.

    
por 16.03.2017 / 01:00

Tags