У меня есть веб-сайты, размещенные на веб-сервере nginx. Я добавил длительность HTTP-запроса в журналы nginx, а nginx записывает эти данные. http://nginx.org/en/docs/http/ngx_http_log_module.html

У меня также есть анализатор логов goaccess, и он отлично работает, за одним неприятным исключением. Я не могу получить параметр времени HTTP-запроса, хотя в документации говорится, что это возможно

%D: время, необходимое для обслуживания запроса, в микросекундах.

Вот URL, пожалуйста, помогите. http://goaccess.io/man#custom-log

Последний номер - длительность запроса.

192.168.17.1 - - [05/Feb/2015:22:24:29 +0400] "POST / HTTP/1.1" 200 12015 "http://www.watch-sell.com/" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.94 Safari/537.36" "-" 20.178

Формат журнала в goaccess.conf

log-format %h %^ %^ [%d:%^] "%r" %s %b "%R" "%^" %T

1 ответ1

2

20.178 - время в секундах с миллисекундами после точки. GoAccess выдаст 20,18 с. Вот формат для использования:

%h %^[%d:%^] "%r" %s %b "%R" "%u" %^ %T

Таким образом, запуск следующего должен сделать это:

goaccess -M -H -f log --log-format='%h %^[%d:%^] "%r" %s %b "%R" "%u" %^ %T' --date-format='%d/%b/%Y'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .