记录客户端请求而不等待服务器响应

时间:2016-09-19 16:02:24

标签: logging nginx

我正在使用nginx的访问日志来记录客户端请求。

我使用的配置如下:

http {
    log_format keep_log '$remote_addr - $remote_user [$time_local] '
                           '"$request" $status $body_bytes_sent '
                           '"$http_referer" "$http_user_agent" "$gzip_ratio"';

    server {
        gzip on;
        access_log /var/logs/nginx/access.log keep_log;
        ...
    }
}

Nginx确实完美地保留了访问日志,但问题是,我在nginx后面使用的服务器花了太多时间来回复客户端。所以nginx等待服务器回复,然后当服务器发送响应时,nginx添加带有状态码的日志。

一旦客户端向nginx发出请求而没有等待后端服务器响应,有没有办法保留日志?

1 个答案:

答案 0 :(得分:0)

即使在理论上也是不可能的,因为到那时你的日志中的部分字段是未知的。