nginx 日志默认为普通文本的格式,例如,下面是 nginx 的一行访问日志:
为了便于利用 Elastic Stack 日志平台收集展示 nginx 的日志,可以将 nginx 的日志改成 JSon 的格式。修改后的 JSon 日志格式如下所示:
为了修改 nginx 的日志格式改成 JSon,需要修改 nginx 的配置文件,笔者 nginx 的配置文件为 /usr/local/nginx/conf/nginx.conf。
在 nginx 的配置文件nginx.conf中,我们定义了两种的日志格式:main和log_JSon,其中,main为普通的文本格式,log_JSon为 JSon 格式。log_JSon其实就是手工构造一个 JSon 字符串。定义了 JSon 的日志格式后,便可以指定 access log 为 JSon 格式:
access_log logs/access.log log_JSon;
修改 nginx 的配置,重启 nginx ,便可以看到 JSon 格式的日志,重启 nginx:
nginx -s reload