Ubuntu 18.04简易安装libnginx-mod-http-lua日志模块

网上很多文章写得需要编译源码的方式安装,我很不认可,看书和写书是两个概念,我一定找到的办法如何看书就好了。找不到就自己写书是不可取的。毕竟你还要花很多精力在别的事情上呢。以下是我整理的安装方法,采用apt-get的方法。

sudo apt-get install libnginx-mod-http-lua

全局修改

#/etc/nginx/nginx.conf

log_format json_combined escape=json
  '{'
    '"t":"$time_local",'
    '"remote_addr":"$remote_addr",'
   # '"remote_user":"$remote_user",'
   '"request":"$request",'
   # '"status": "$status",'
   # '"body_bytes_sent":"$body_bytes_sent",'
    '"req_body":"$request_body",'
    '"req_time":"$request_time",'
    '"resp_body":"$resp_body",'
   # '"http_user_agent":"$http_user_agent"'
  '}';

域名配置文件修改

比如url.com.log中添加:

        access_log  /var/log/nginx/url.com.log json_combined;

   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
    ';

查看日志

tail -f /var/log/nginx/url.com.log

你可能感兴趣的:(nginx)