Назад | Перейти на главную страницу

Nginx, awstats и время запроса

Как я могу настроить nginx для записи времени запроса в журналы, чтобы awstats мог отображать время, затраченное на каждый запрос?

Кроме того, как я могу увидеть запросы по времени в awstats?

Это текущий формат

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

Как упоминал @Vladimir, для регистрации времени запроса отредактируйте свой log_format директива, как показано ниже:

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"'
                      ' $request_time';

и зададим соответствующие переменные для LogFormat в awstats Файл конфигурации:

LogFormat="%host %other %host_r %time1 %methodurl %code %bytesd %refererquot %uaquot %other %extra1"

Вот extra1 пример раздела:

ExtraSectionName1="Time to serve requests (seconds)"
ExtraSectionCodeFilter1=""
ExtraSectionFirstColumnTitle1="Number of seconds to serve the request"
ExtraSectionFirstColumnValues1="extra1,(.*)"
ExtraSectionStatTypes1="H"

Отчет о строительстве:

awstats.pl -config=model -output -staticlinks > awstats.localhost.html

Вы можете использовать $ request_time переменная, как указано Вот, например:

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                '$status $body_bytes_sent $request_time "$http_referer" '
                '"$http_user_agent" "$http_x_forwarded_for"';

Редактировать: Упс, пропустил второй вопрос. Ты можешь сделать AWStats проанализировать новый формат с помощью LogFormat директива с экстраN переменная, а позже используйте ExtraSection для отображения результатов.