Varnish выводит ReqEnd с использованием стандартного вывода

Можно ли вывести ReqEnd с помощью std.log в VCL? Я хотел бы использовать ReqEnd в ведении журнала лака.


person Justin Hourigan    schedule 23.11.2012    source источник


Ответы (1)


Я не знаю, можете ли вы регистрировать ReqEnd в лакинске, но вы можете регистрировать время начала запроса и xid.

пример vcl:

........
C{
    #include <syslog.h>
    #include <sys/time.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
}C

sub vcl_recv {

    C{
        struct timeval detail_time;
        gettimeofday(&detail_time,NULL);
        char start[20];
        sprintf(start, "%lu%06lu", detail_time.tv_sec, detail_time.tv_usec);
        VRT_SetHdr(sp, HDR_REQ, "\020X-Request-Start:", start, vrt_magic_string_end);
    }C

........

sub vcl_deliver {
    set resp.http.X-ID = req.xid;
}
.......

и ты это увидишь: varnishncsa -F "%{X-Request-Start}o %{X-ID}o"

person mrege    schedule 17.12.2012