Elastic 技术栈之 Filebeat 简介
Beats 是安装在服务器上的数据中转代理。
Beats 可以将数据直接传输到 Elasticsearch 或传输到 Logstash 。
Beats 有多种类型,可以根据实际应用需要选择合适的类型。
常用的类型有:
Packetbeat:网络数据包分析器,提供有关您的应用程序服务器之间交换的事务的信息。
Filebeat:从您的服务器发送日志文件。
Metricbeat:是一个服务器监视代理程序,它定期从服务器上运行的操作系统和服务收集指标。
Winlogbeat:提供Windows事件日志。
参考
更多 Beats 类型可以参考:community-beats
说明
由于本人工作中只应用了 FileBeat,所以后面内容仅介绍 FileBeat 。
FileBeat 的作用相比 Logstash,FileBeat 更加轻量化。
在任何环境下,应用程序都有停机的可能性。 Filebeat 读取并转发日志行,如果中断,则会记住所有事件恢复联机状态时所在位置。
Filebeat带有内部模块(auditd,Apache,Nginx,System和MySQL),可通过一个指定命令来简化通用日志格式的收集,解析和可视化。
FileBeat 不会让你的管道超负荷。FileBeat 如果是向 Logstash 传输数据,当 Logstash 忙于处理数据,会通知 FileBeat 放慢读取速度。一旦拥塞得到解决,FileBeat 将恢复到原来的速度并继续传播。
安装Unix / Linux 系统建议使用下面方式安装,因为比较通用。
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.1.1-linux-x86_64.tar.gz tar -zxf filebeat-6.1.1-linux-x86_64.tar.gz参考
更多内容可以参考:filebeat-installation
配置 配置文件首先,需要知道的是:filebeat.yml 是 filebeat 的配置文件。配置文件的路径会因为你安装方式的不同而变化。
Beat 所有系列产品的配置文件都基于 YAML 格式,FileBeat 当然也不例外。
filebeat.yml 部分配置示例:
filebeat: prospectors: - type: log paths: - /var/log/*.log multiline: pattern: '^[' match: after