Filebeat、Logstash、Rsyslog 各种姿势采集Nginx日志
由于nginx功能强大,性能突出,越来越多的web应用采用nginx作为http和反向代理的web服务器。而nginx的访问日志不管是做用户行为分析还是安全分析都是非常重要的数据源之一。如何有效便捷的采集nginx的日志进行有效的分析成为大家关注的问题。
本文通过几个实例来介绍如何通过filebeat、logstash、rsyslog采集nginx的访问日志和错误日志。
大家都知道ELK技术栈是采集、分析日志的利器。所以这里介绍的是从nginx采集日志到ES。当然至于日志采集以后存到看大家的需要。通过logstash可以方便的配置日志输出存储的方式。
一般来说nginx默认安装后,日志文件在 /usr/local/nginx/logs 目录下。分别有 access.log和error.log 访问日志和错误日志。
这次示例Elasitcsearch是三个节点组成的集群172.28.65.22、172.28.65.23、172.28.65.24,172.28.65.30 是kibana的地址,172.28.65.32是数据采集服务器,上面装有logstash、nginx、 filebeat。一般来说采集服务器上有logstash,而nginx、 filebeat应该是装在采集目标上。
一、直接通过filebeat采集日志到ES
二、通过filebeat采集日志到logstash再送到ES
首先得安装 logstash ,安装完后在logstash的安装目录下新建vi filebeat-pipeline.conf,filebeat-pipeline.conf的具体配置如下:
三、直接通过rsyslog采集日志到logstash在送到ES
原文连接:https://www.cnblogs.com/xiejava/p/12452434.html
文章转载:DevOps技术栈
(版权归原作者所有,侵删)