Filebeat 日志采集工具安装

您所在的位置:网站首页 filebeatkafka Filebeat 日志采集工具安装

Filebeat 日志采集工具安装

#Filebeat 日志采集工具安装| 来源: 网络整理| 查看: 265

Filebeat 是比较轻量的日志采集工具,对于一些简单的采集任务可以直接使用 Filebeat 采集,同时也支持很多的方式输出,可以输出至 Kafka、Elasticsearch、Redis 等,下面我们来简单配置下。

首先下载好安装包,例如:filebeat-8.6.2-linux-x86_64.tar.gz

然后直接解压安装包到指定的安装位置:

tar -xvzf filebeat-8.6.2-linux-x86_64.tar.gz -C /opt cd /opt/filebeat-8.6.2-linux-x86_64

这样我们就将 filebeat 安装到了 cd /opt/filebeat-8.6.2-linux-x86_64 下面,然后我们来简单配置一下,编辑配置文件 filebeat.yml

- type: filestream # Unique ID among all inputs, an ID is required. id: myprogram-filestream-id # Change to true to enable this input configuration. enabled: true # Paths that should be crawled and fetched. Glob based paths. paths: - /opt/myprogram/logs/program.log processors: - add_fields: target: "" fields: streamId: 'myprogram-filestream-id' parsers: - ndjson: target: "jsonObject" - type: filestream id: syslog-filestream-id enabled: true paths: - /var/log/messages

上面主要是关于采集的文件输入部分,可以配置多个文件流,但是每个文件流都必须有一个唯一的 id,这样方便 filebeat 通过 inode 去跟踪文件的变化,并且 paths 配置支持多个文件的目录,也就是同时监听多个文件,也可以支持按照通配符匹配多个文件,然后下面可以添加一些处理器,比如这里附加了一个 streamId 的字段用于在输出时知道来源,同时方便后续的检索,然后日志如果是 JSON 格式还可以配置解析方式,比如上面是 ndjson,输出的字段是 jsonObject,然后下级字段就是具体 JSON 解析的内容。第二个流是采集了系统日志,没有添加其他附加的功能。

另外还可以对日志进行简单的正则匹配或者过滤,具体可以参考文档:https://www.elastic.co/guide/en/beats/filebeat/8.6/filebeat-input-filestream.html

然后可以继续配置输出,支持多种输出,但是每次只能设置一种。

配置 Elasticsearch 如下:

output.elasticsearch: # Array of hosts to connect to. hosts: ["localhost:9200"] # Protocol - either `http` (default) or `https`. protocol: "https" # Authentication credentials - either API key or username/password. #api_key: "id:api_key" #username: "elastic" #password: "changeme"

配置直接输出到控制台,在调试时比较方便:

output.console: pretty: true

还可以输出到 Redis,实际上是写入 list 类型的队列:

output.redis: hosts: ["localhost:6379"] password: "" key: "filebeat" db: 2 timeout: 5

除了上面方式还可以输出到 Logstach 方便二次处理等。

最后还可以配置一些公共的处理器,默认的内容如下:

processors: - add_host_metadata: when.not.contains.tags: forwarded - add_cloud_metadata: ~ - add_docker_metadata: ~ - add_kubernetes_metadata: ~

其中 add_host_metadata 会添加很多机器本身的信息,例如网卡、操作系统、CPU 型号等,下面的分别就是采集主流云厂商、Docker 以及 k8s 的信息处理器,这些处理器可以根据需要选择,如果关掉直接注释即可,另外还可以手动添加其他的处理器,可以参考:https://www.elastic.co/guide/en/beats/filebeat/8.6/filtering-and-enhancing-data.html,处理器既可以添加到全局也可以添加到指定的 input 下面,只对特定的输入生效。

最后保存配置文件,然后尝试运行 filebeat:

./filebeat -e

运行后从已配置的输出查看具体的内容即可。

Reference:

https://www.elastic.co/guide/en/beats/filebeat/8.6/filebeat-overview.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3