Track Application Response time in Nginx

From wikieduonline
Jump to navigation Jump to search


1) Add to /etc/nginx/nginx.conf befor your access_log directive

 log_format timed_combined '$remote_addr - $remote_user [$time_local] '
    '"$request" $status $body_bytes_sent '
    '"$http_referer" "$http_user_agent" '
    '$pipe $upstream_response_time $request_time';

2) Modify access_log directive to use new format:

access_log /var/log/nginx/ timed_combined;


request_time This shows how long Nginx dealt with the request
upstream_response_time Gives us the time it took our upstream server (in this case Apache/mod_wsgi) to respond
pipe Shows ‘p’ in case the request was pipelined.

3) Reload nginx:

nginx -t && systemctl restart nginx

4) Check your new log format, last field contains ($request_time):

tail -f /var/log/nginx/access.log

See also[edit]