Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I tried everything:

service varnishlog start - logs everything

varnishlog -D -c -m TxStatus:503 > /var/log/varnish/varnish.log - doesn't seem to be doing anything

varnishlog -c -m TxStatus:503 > /var/log/varnish/varnish.log - only logs until I close my SSH connection

I'm out of options, any help?

Note: varnishncsa is not an option, since it doesn't tell me which error causes the 503. I'm running Varnish 3.x (latest) and CentOS 5.8 with Apache 2 as backend.

share|improve this question
up vote 3 down vote accepted

If I understand correctly varnishlog -c -m TxStatus:503 > /var/log/varnish/varnish.log does meet your needs but has the downside to stop once you close ssh.

If you need to temporary log 503 error, like for a few months, time to debug a problem, then you can look at nohup or screen.

If you need to permanently log 503 error, have a look at varnishlog init script (/etc/init.d/varnishlog ).

share|improve this answer
Editing /etc/init.d/varnishlog had no effect (still logged all hits). Tried nohup, logged in again and it's still in the process list, so I'm guessing it worked. Thanks! – Eduard Luca Aug 3 '12 at 11:01

For those who land here in frustration looking for solution to the same problem in Varnish 4, see below:

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

Varnish 4 did away with the -m option in varnishlog and instead came up with a new filter query language called VSL which is available in the new option -q. In the above command, -a provides appendonly option instead of overwriting the file, -w allows to write output to a file and -q is for the VSL query. Above command will log entries where varnish response or backend response status is >=500 (including the dreaded 503 error).

share|improve this answer
Thank you, this command launched in a tmux shell worked like a charm! – lucaferrario Oct 7 '15 at 11:09
If you use latest Varnish 4.1, remember to add "-A" to the parameters (so the list becomes -a -A -w ... to have an ASCII log (otherwise Varnish writes a binary log) – lucaferrario Oct 19 '15 at 10:30

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.