发布网友 发布时间:2022-12-25 00:48
共1个回答
热心网友 时间:2023-10-10 21:33
我们这里用到的是filebeat+elk(elasticsearch+logstash+kibana)来进行系统日志的收集。filebeat安装在各个服务器中,Logstash+ElasticSearch+Kibana安装在一台专门用于基础服务的服务器上。
Filebeat是一个轻量级的托运人,用于转发和集中日志数据. Filebeat作为代理安装在服务器上,监视您指定的日志文件或位置,收集日志事件,并将它们转发到ElasticSearch或Logstash进行索引.
官方中文文档: https://s0www0elastic0co.icopy.site/guide/en/beats/filebeat/current/index.html
Logstash是一个开源的服务器端数据处理管道,可以同时从多个数据源获取数据,并对其进行转换,然后将其发送到你最喜欢的“存储”。
官方中文文档: https://s0www0elastic0co.icopy.site/guide/en/logstash/current/index.html
Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。Lucene 可以说是当下最先进、高性能、全功能的搜索引擎库--无论是开源还是私有。
官方中文文档: https://s0www0elastic0co.icopy.site/guide/en/elasticsearch/reference/current/index.html
《Elasticsearch:权威指南》: https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html
Kibana 是一款开源的数据分析和可视化平台,它是 Elastic Stack 成员之一,设计用于和 Elasticsearch 协作。您可以使用 Kibana 对 Elasticsearch 索引中的数据进行搜索、查看、交互操作。您可以很方便的利用图表、表格及地图对数据进行多元化的分析和呈现。
官方中文文档: https://www.elastic.co/guide/cn/kibana/current/index.html
nginx.conf中设置日志文件格式:
修改完成后,通过 sudo nginx -t 来检查配置文件是否正确,然后 sudo nginx -s reload 来重启
filebeat各系统安装教程详见官方文档。
我这里安装的deb包(rpm包也同样),配置文件在/etc/filebeat/filebeat.yml,
filebeat命令:
参数介绍:
在/usr/local/文件夹下依次创建logstash/conf.d/logstash.conf
grok正则在线验证地址: http://grokdebug.herokuapp.com
正则代表的含义: https://github.com/elastic/logstash/blob/v1.4.2/patterns/grok-patterns
配置成功后,执行如下命令重启docker中的logstash (有时会重启失败,多试几次吧)
在浏览器中输入 http://ip:5601 进入kibana
然后如下设置
然后创建 index pattern
然后选择@timestamp
最后在Discover标签页就可以看到了