获取varnishlog只logging503错误到文件

我尝试了一切:

service varnishlog start – logging一切

varnishlog -D -c -m TxStatus:503 > /var/log/varnish/varnish.log – 似乎没有做任何事情

varnishlog -c -m TxStatus:503 > /var/log/varnish/varnish.log – 只有logging,直到我closures我的SSH连接

我没有select,有什么帮助?

注意:varnishncsa不是一个选项,因为它不会告诉我哪个错误导致了503.我运行Varnish 3.x(最新版)和CentOS 5.8,Apache 2作为后端。

如果我理解正确的话varnishlog -c -m TxStatus:503> /var/log/varnish/varnish.log确实符合你的需求,但是一旦你closures了ssh就会停下来。

如果你需要临时login503错误,像几个月,时间去debugging一个问题,那么你可以看nohup或屏幕。

如果您需要永久logging503错误,请查看varnishlog初始化脚本(/etc/init.d/varnishlog)。

对于那些沮丧地在这里寻找解决同样的问题,在光油4,见下文:

 varnishlog -a -w /var/log/varnish/varnish50x.log -q "RespStatus >= 500 or BerespStatus >= 500" 

Varnish 4在varnishlog中取消了-m选项,而是提出了一种新的filter查询语言VSL,该语言在新选项-q中可用。 在上面的命令中,-a提供appendonly选项而不是覆盖文件,-w允许将输出写入文件,-q用于VSL查询。 上述命令将logging清漆响应或后端响应状态> = 500(包括可怕的503错误)的条目。