(十五):FileBeat
1、FileBeat简介
Filebeat是用于转发和集中日志数据的轻量级传送工具。Filebeat监视用户指定的日志文件或位置,收集日志事件,并将日志数据转发到Elasticsearch或Logstash进行索引。
Logstash运行在JVM中,对内存、cpu、io等资源消耗比较高,Beats所占系统的CPU和内存几乎可以忽略不计。
FileBeat的工作原理:启动Filebeat时,它将启动一个或多个输入,这些输入将在为日志数据指定的位置中查找。Filebeat会为其所找到的每个日志都启动一个收集器,每个收集器都读取单个日志以获取新内容,并将新日志数据发送到libbeat,libbeat将聚集事件,并将聚集的数据发送到为Filebeat配置的输出。
2、Filebeat安装部署
2.1、Filebeat下载
filebeat安装文档:https://www.elastic.co/guide/en/beats/filebeat/7.10/filebeat-installation-configuration.html。
filebeat下载地址:https://www.elastic.co/cn/downloads/past-releases#filebeat,为了与ES、Logstash 适配,这里选择 7.10.0。
下载完成后解压,解压详情如下:
2.2、Filebeat配置
修改配置文件:filebeat.yml,详情如下:
# 输入配置
filebeat.inputs:
# 指定类型为log
- type: log
enabled: true
# 指定监控要监控的日志文件的路径
paths:
- D:\development\Elasticsearch\elasticsearch-7.10.0\logs\*.log
# 指定kibana所在主机的ip和服务监听的端口
setup.kibana:
host: "localhost:5601"
# 指定es所在主机的ip以及服务监听的端口
output.elasticsearch:
hosts: ["localhost:9200"]
在这个例子中,获取 D:\development\Elasticsearch\elasticsearch-7.10.0\logs\*.log 路径下的所有文件作为输入,这表示Filebeat将获取 D:\development\Elasticsearch\elasticsearch-7.10.0\logs\*.log 目录下所有以.log结尾的文件。
为了从预定义的子目录级别下抓取所有文件,可以使用以下模式:D:\development\Elasticsearch\elasticsearch-7.10.0\*\*.log 。这将抓取 D:\development\Elasticsearch\elasticsearch-7.10.0 的子文件夹下所有的以.log结尾的文件。
2.3、Filebeat启动
.\filebeat -e -c filebeat.yml
FileBeat的启动详情如下:
ElasticSearch的日志输出如下:
至此,FileBeat安装部署成功。