varnishlog and logging errors
Hugo Cisneiros (Eitch)
hugo.cisneiros at gmail.com
Wed Oct 19 19:25:58 CEST 2011
On Wed, Oct 19, 2011 at 7:25 AM, Audun Ytterdal <audun at ytterdal.net> wrote:
> Hi list
>
> I'm trying to figure out the best way of logging errors in varnish to
> a logfile. The scenario am looking at is when a client get some HTTP
> 5XX message i want to know as much as possible about that error. The
> cause of the error could be many things
[...]
> My alternatives are varnishlog and varnishncsa.
I use syslog to do it. When a request goes to vcl_error, I log it,
including the status of the object for example. It's a bit more
difficult to do (since it uses C variables, not VCL language ones),
but works very fine.
For example:
In the beginning of default.vcl:
C{
#include <syslog.h>
}C
Then on vcl_error:
if (obj.status >= 500) {
C{
syslog(LOG_INFO, "Error (%s) (%s) (%s)",
VRT_r_req_url(sp), VRT_r_obj_response(sp), VRT_r_req_xid(sp));
}C
}
References:
https://www.varnish-cache.org/trac/wiki/VCLExampleSyslog
--
[]'s
Hugo
www.devin.com.br
More information about the varnish-misc
mailing list