FileBeat收集Nginx的日志到ELK中进行可视化分析

2022-10-27 17:13:33 浏览数 (1)

将SpringBoot应用的日志输出到Logstash之后,所有的应用日志都可以使用使用Kibana进行可视化的检索,使用起来还是蛮香的,Kibana用着用着之后发现他的强大远不止于日志检索,因为他拥有一个可视化分析的功能.

如何监控微服务

微服务中的微字体现在每个服务都有自己独立的进程,就这一个特性使得单独监控应用已经变得不现实,那么要怎么做呢,想要监控我们就需要找到统一的入口集中监控,这个入口显而易见的就是Nginx.SpringBoot可以将应用输出到Logstash上,那么Nginx能不能?

LogStash与FileBeat

经过一番调研Nginx确实可以将日志输出到Logstash上,不过要经过大量的配置与解析,使用起来感觉不是很爽,但是在ES的官网上逛了逛翻了翻,发现了另外一款和ELK同类的产品FileBeat,他的性能要更优于Logstash.

看完简介和下边的原理图之后,顿时产生了一个设想,将Nginx的访问以及错误日志作为Filebeat的Input,通过filebeat将日志送到es上最后使用Kibana进行可视化分析,不得不说这真是一个完美的设想. 继续翻阅官方文档,发现Filebeat天生支持Nginx模块输送到ES中.

安装Filebeat

https://www.elastic.co/guide/en/beats/filebeat/7.14/filebeat-installation-configuration.html 关于如何安装FileBeat,官方文档写的相当清楚.

配置Filebeat启用Nginx模块

FIlebeat启用Nginx

代码语言:javascript复制
filebeat modules enable nginx

In the module configs under modules.d, change the module settings to match your environment

代码语言:javascript复制
vim modules.d/nginx.yml

添加访问日志与错误日志的路径.

将Filebeat输出到ES

修改filebeat.yml将输出改为es

启动Filebeat

代码语言:javascript复制
./filebeat setup -e
sudo chown root filebeat.yml 
sudo chown root modules.d/system.yml 
sudo ./filebeat -e

配置Kibana

在kibana上的配置就比较灵活啦,自己探索就好啦,我不想写啦,直接看结果吧,还是很酷炫的

0 人点赞