4.使用ab命令做模拟访问
也可以使用浏览器访问,手动生成访问日志
[root@db01 ~]# ab -n 100 -c 100 http://172.16.210.53/
5.查看日志
这时候,就能看见日志格式变成了json格式
[root@db01 ~]# tailf /var/log/nginx/access.log
{ "time\_local": "22/Jun/2020:08:53:21 +0800", "remote\_addr": "172.16.210.53", "referer": "-", "request": "GET / HTTP/1.0", "status": 200, "bytes": 4833, "agent": "ApacheBench/2.3", "x\_forwarded": "-", "up\_addr": "-","up\_host": "-","up\_resp\_time": "-","request\_time": "0.000" }
6.使用es-head查看是否建立索引
filebeat会收集数据,然后导出至elasticsearch
7.修改filebeat配置文件
[root@db01 ~]# vim /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/nginx/access.log
##添加这两行信息,使其能解析json格式的日志
json.keys_under_root: true
json.overwrite_keys: true
output.elasticsearch:
hosts: ["172.16.210.53:9200"]
8.重启filebeat
[root@db01 ~]# systemctl restart filebeat
9.回到kibana的web界面创建索引
点击management
点击Create index pattern
输入filebeat导出到elaticsearch的索引名字,再点击Next stup
过滤选项名选择@timestamp再点击Create index pattern
再点击Discover就能查看到创建的索引的数据了
再点击小三角就能看到全部都是一一对应的json格式数据了
然后可以通过选择对应的字段名,来查看指定想要知道的信息
比如想查看访问的ip都有谁,见选择remote_addr再点击add
只过滤显示访问的ip
再想查看这些ip访问的状态码,就添加status
以此类推,想要显示什么就添加什么
如果不想查看某个ip的访问信息,也可以排除某个ip