资讯专栏INFORMATION COLUMN

nginx 的日志记录 response 的报文体

yearsj / 3500人阅读

摘要:目前的是不支持输出报文体的使用来分配请求报文体给一个变量。下面是一个示例

目前的 nginx 是不支持输出 response 报文体的
使用 body_filter_by_lua 来分配请求报文体给一个 nginx 变量。下面是一个示例

worker_processes  1;
error_log logs/error.log;
events {
    worker_connections 1024;
}
http {
    log_format log_req_resp "$remote_addr - $remote_user [$time_local] "
        ""$request" $status $body_bytes_sent "
        ""$http_referer" "$http_user_agent" $request_time req_body:"$request_body" resp_body:"$resp_body"";

    server {
        listen 8082;
        access_log logs/access.log log_req_resp;

        lua_need_request_body on;

        set $resp_body "";
        body_filter_by_lua "
            local resp_body = string.sub(ngx.arg[1], 1, 1000)
            ngx.ctx.buffered = (ngx.ctx.buffered or "") .. resp_body
            if ngx.arg[2] then
                ngx.var.resp_body = ngx.ctx.buffered
            end
        ";

        location / {
            echo "Hello World!";
        }
    }
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39079.html

相关文章

  • 413错误——线上bug历险记

    摘要:查了一下,报错误,表示请求实体太大。此错误通常出现在使用请求进行文件上传的时候,因为上传文件容易出现大文件,比如超过的。所以,结果很明显了,问题基本出现在前端请求服务转发跳板机三个位置。修改为以后,问题解决。 今天阳光明媚,天气正好,心情很是美丽。 但是业务同学突然说生产环境出bug了。 对不起,收回前言,感觉是台风过境。。。查了一下,报413错误,表示http请求实体太大。 此错误通...

    李世赞 评论0 收藏0
  • 记一次 strace 追踪 Docker + VirtualBox 底层 bug

    摘要:最近在公司搭建一个基于的环境。的内核可以算是半个,依赖一些的容器相关的技术是不支持的,所以需要通过一个虚拟机运行来使用。于是和前端的同学,一起打开文件进行对比,但并没有发现非常可疑的点。果然拿到的文件不再有末尾的乱码。 最近在公司搭建一个基于 Docker 的 PHP 环境。 背景知识 Docker 是一种容器技术,它可以提供一个隔离的环境,让用户的程序运行在一个完全隔离的虚拟的系统...

    paulquei 评论0 收藏0
  • 记一次 strace 追踪 Docker + VirtualBox 底层 bug

    摘要:最近在公司搭建一个基于的环境。的内核可以算是半个,依赖一些的容器相关的技术是不支持的,所以需要通过一个虚拟机运行来使用。于是和前端的同学,一起打开文件进行对比,但并没有发现非常可疑的点。果然拿到的文件不再有末尾的乱码。 最近在公司搭建一个基于 Docker 的 PHP 环境。 背景知识 Docker 是一种容器技术,它可以提供一个隔离的环境,让用户的程序运行在一个完全隔离的虚拟的系统...

    andong777 评论0 收藏0
  • 记一次 strace 追踪 Docker + VirtualBox 底层 bug

    摘要:最近在公司搭建一个基于的环境。的内核可以算是半个,依赖一些的容器相关的技术是不支持的,所以需要通过一个虚拟机运行来使用。于是和前端的同学,一起打开文件进行对比,但并没有发现非常可疑的点。果然拿到的文件不再有末尾的乱码。 最近在公司搭建一个基于 Docker 的 PHP 环境。 背景知识 Docker 是一种容器技术,它可以提供一个隔离的环境,让用户的程序运行在一个完全隔离的虚拟的系统...

    Charlie_Jade 评论0 收藏0
  • 深度解析Tengine调试与资源监控方法论

    摘要:是由淘宝网发起的服务器项目。回源监控是内容分发网络的简称,其分发的内容来自用户源站,负责回源的模块是最重要组成部分之一,使跨越单机的限制,完成网络数据的接收处理和转发。这部分主要介绍的一些调试技巧和回源资源监控的内容,以及相应的实例分享。 摘要: Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,提供更强大的流量负载均衡能力、全站HTTPS...

    everfight 评论0 收藏0

发表评论

0条评论

yearsj

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<