https://mp.weixin.qq.com/s/MUIpei29-_0eTYbOMC5Lkg
本次参考链接:https://grafana.com/grafana/dashboards/11190
转自:https://www.cnblogs.com/Lqdream/p/16918607.html
一、概述
使用ELK收集nginx access日志,利用Grafana做出一套可视化图表
二、环境准备
环境说明
操作系统:centos 7.6
docker版本:19.03.12
ip地址:192.168.31.196
elk搭建
关于elk的搭建,请参考以下3篇文章:
docker安装elasticsearch和head插件
docker安装logstash
docker安装kibana
nginx安装
线上nginx直接用yum安装的
yum install -y nginx
三、nginx日志格式
默认的nginx日志格式,需要改为指定的格式
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
log_format aka_logs
'{"@timestamp":"$time_iso8601",'
'"host":"$hostname",'
'"server_ip":"$server_addr",'
'"client_ip":"$remote_addr",'
'"xff":"$http_x_forwarded_for",'
'"domain":"$host",'
'"url":"$uri",'
'"referer":"$http_referer",'
'"args":"$args",'
'"upstreamtime":"$upstream_response_time",'
'"responsetime":"$request_time",'
'"request_method":"$request_method",'
'"status":"$status",'
'"size":"$body_bytes_sent",'
'"request_body":"$request_body",'
'"request_length":"$request_length",'
'"protocol":"$server_protocol",'
'"upstreamhost":"$upstream_addr",'
'"file_dir":"$request_filename",'
'"http_user_agent":"$http_user_agent"'
'}';
#access_log /var/log/nginx/access.log main;
access_log /var/log/nginx/access.log aka_logs;
注意:这里的nginx的所有访问日志,统一在/var/log/nginx/access.log。
如果你的环境,单独为每一个虚拟主机分配了access日志,那么就需要在对应的虚拟主机配置文件,应用格式aka_logs即可。
文档更新时间: 2023-08-19 20:04 作者:admin