filebeat介绍

Filebeat的基本原理其实就是有一群prospector,每个prospector手下管着一批harvester,每个harvester负责监视一个日志文件,把变动的内容由spooler汇总之后交给Logstash或者Elasticsearch。如果想快速搭建一个可以工作的Filebeat,无非有三点:

1.说明要监视哪些文件

filebeat:
  prospectors:
    -
      paths:
        - "/var/log/lmz.log"

2.说明收集的日志发给谁

如果直接发送给Elasticsearch,可以设置如下:

output:
  elasticsearch:
     hosts: ["localhost:9200"]

如果需要发给Logstash,可以注释掉Elasticsearch的配置,然后设置Logstash如下:

output:
  logstash:
    hosts: ["localhost:5044"]

当然,也需要在Logstash的配置中指明要从该端口(5044)监听来自Filebeat的数据:

/etc/logstash/conf.d/beats-input.conf:
input {
  beats {
    port => 5044
  }
}

这里的配置举例是把Filebeat、Logstash、Elasticsearch安装在了一台机器上,实际使用中肯定是分开部署的,需要根据实际情况修改配置文件中的IP地址及端口号。

3.让Elasticsearch知道如何处理每个日志事件。

默认的Elasticsearch需要的index template在安装Filebeat的时候已经提供,路径为/etc/filebeat/filebeat.template.json,可以使用如下命令装载该模板:

curl -XPUT 'http://localhost:9200/_template/filebeat?pretty' -d@/etc/filebeat/filebeat.template.json

当然,也不能忘了,每次修改完Filebeat的配置后,需要重启Filebeat才能让改动的配置生效。

你可能感兴趣的:(filebeat)