FileBeat部署全流程

Filebeat的概念

Filebeat是一种轻量型日志采集器,内置有多种模块(auditd、Apache、NGINX、System、MySQL 等等),可针对常见格式的日志大大简化收集、解析和可视化过程,只需一条命令即可。之所以能实现这一点,是因为它将自动默认路径(因操作系统而异)与 Elasticsearch 采集节点管道的定义和 Kibana 仪表板组合在一起。不仅如此,数个 Filebeat 模块还包括预配置的 Machine Learning 任务。另一点需要声明的是:根据采集的数据形式不同,形成了由多个模块组成的Beats。Beats是开源数据传输程序集,可以将其作为代理安装在服务器上,将操作数据发送给Elasticsearch,或者通过Logstash,在Kibana中可视化数据之前,在Logstash中进一步处理和增强数据。

日志格式 采集所需组件框架 Audit data Auditbeat(轻量型审计日志采集器) Log files Filebeat(轻量型日志采集器) Availability Heartbeat(轻量型运行时间监控采集器) Metrics Metricbeat(轻量型指标采集器) Network traffic Packetbeat(轻量型网络数据采集器) Windows event logs Winlogbeat(轻量型 Windows 事件日志采集器)

Filebeat特点

1.轻量型日志采集器,占用资源更少,对机器配置要求极低。 2.操作简便,可将采集到的日志信息直接发送到ES集群、Logstash、Kafka集群等消息队列中。 3.异常中断重启后会继续上次停止的位置。(通过${filebeat_home}\data\registry文件来记录日志的偏移量)。 4.使用压力敏感协议(backpressure-sensitive)来传输数据,在logstash 忙的时候,Filebeat 会减慢读取-传输速度,一旦 logstash 恢复,则 Filebeat 恢复原来的速度。 5.Filebeat带有内部模块(auditd,Apache,Nginx,System和MySQL),可通过一个指定命令来简化通用日志格式的收集,解析和可视化。

Filebeat与Logstash对比

1.Filebeat是轻量级数据托运者,您可以在服务器上将其作为代理安装,以将特定类型的操作数据发送到Elasticsearch。与Logstash相比,其占用空间小,使用的系统资源更少。 2.Logstash具有更大的占用空间,但提供了大量的输入,过滤和输出插件,用于收集,丰富和转换来自各种来源的数据。 3.Logstash是使用Java编写,插件是使用jruby编写,对机器的资源要求会比较高。在采集日志方面,对CPU、内存上都要比Filebeat高很多。

Filebeat安装

1.Filebeat官网地址:Filebeat:轻量型日志分析与 Elasticsearch | Elastic 2.安装包下载地址:Download Filebeat • Lightweight Log Analysis | Elastic

安装后重命名为Filebeat

在installs下创建log文件夹

进入Filebeat目录下修改配置文件Filebeat.yml 将以下设置修改为true和日志文件路径

Logstash部署安装

可在Filebeat官网下载安装

安装后重命名为logstash

进入logstash目录下创建job文件夹

创建文件夹加job编写数据采集文件:filebeat_to_logstash.conf文件

input {
#对接的是beats
  beats {
  #端口号5044
    port=>5044
    #编码格式GBK
    codec=>plain{
        charset=>"GBK"
    }
  }
}
filter {
        mutate{
        split=>["message","|"]
                add_field => {
                        "field1" => "%{[message][0]}"
                }
                add_field => {
                        "field2" => "%{[message][1]}"
                }
                remove_field => ["message"]
        }
        json{
                source => "field1"
                target => "field2"
        }
}
#输出数据到控制台
output{
       stdout{
               codec=>rubydebug
      }
}

配置Filebeat中的output部分

#配置logstash
cd /opt/installs/filebeat
vim /filebeat.yml

启动Filebeat和logstash

cd /opt/installs/filebeat
./filebeat -e
cd /opt/installs/logstash
bin/logstash -f job/filebeat_to_logstash.conf
#创建日志文件
cd /opt/installs/log
vim app.log
#添加以下内容
1562065564549|{"cm":{"ln":"-54.7","sv":"V2.9.8","os":"8.1.0","g":"9NY0AL0L@gmail.com","mid":"m140","nw":"WIFI","l":"pt","vc":"13","hw":"1080*1920","ar":"MX","uid":"u737","t":"1562030978430","la":"-7.4","md":"HTC-14","vn":"1.1.3","ba":"HTC","sr":"M"},"ap":"gmall","et":[{"ett":"1561996979060","en":"display","kv":{"newsid":"n925","action":"1","extend1":"1","place":"4","category":"37"}},{"ett":"1562031053551","en":"newsdetail","kv":{"entry":"3","newsid":"n332","news_staytime":"10","loading_time":"8","action":"4","showtype":"3","category":"11","type1":"433"}},{"ett":"1561986545246","en":"loading","kv":{"extend2":"","loading_time":"7","action":"1","extend1":"","type":"1","type1":"102","loading_way":"1"}},{"ett":"1562053433842","en":"active_foreground","kv":{"access":"1","push_id":"1"}},{"ett":"1562030443443","en":"favorites","kv":{"course_id":2,"id":0,"add_time":"1562049124751","userid":0}}]}

在logstash窗口下查看结果如图所示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值