json Nginx默认日志输出格式为文本非json格式,修改配置文件即可输出json格式便于收集以及绘图
修改nginx配置文件添加配置,增加一个json输出格式的日志格式
log_format access_log_json ‘{"user_ip":"$http_x_forwarded_for","lan_ip":"$remote_addr","log_time":"$time_iso8601","user_rqp":"$request","http_code":"$status","body_bytes_sent":"$body_bytes_sent","req_time":"$request_time","user_ua":"$http_user_agent"}‘;
日志输出格式为
配置logstash文件先标准输出查看效果
input{ ???file{ ???????path => "/data/logs/nginx/http-access.log" ???????codec => "json"}}filter{}output{ ???stdout{ ???????codec =>rubydebug ???}}~ ??????????????????????????????????????????????????????????????????????????????????????????~ ????????????????????????????????
启动/usr/share/logstash/bin/logstash -f nginx.conf
在web页面访问nginx查看输出,输出为json格式
然后再输出至elasticsearch即可
ELK之nginx日志使用json格式输出
原文地址:https://www.cnblogs.com/minseo/p/9192648.html