温馨提示×

Ubuntu Filebeat配置文件解析

小樊
38
2025-12-15 00:18:38
栏目: 智能运维

Ubuntu Filebeat 是一个轻量级的日志文件收集器,用于将日志数据发送到 Elasticsearch 或 Logstash 进行存储和分析。Filebeat 的配置文件通常位于 /etc/filebeat/filebeat.yml。下面是对该配置文件的主要部分的解析:

1. filebeat.inputs

这部分定义了 Filebeat 监听的输入源。常见的输入源包括日志文件、系统日志等。

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/*.log
  ignore_older: 72h
  • type: 输入类型,通常是 log
  • enabled: 是否启用该输入源。
  • paths: 要监控的日志文件路径。
  • ignore_older: 忽略超过这个时间的日志文件。

2. filebeat.modules

这部分定义了 Filebeat 的模块,模块可以帮助你更方便地配置特定的日志类型。

filebeat.modules:
  path: ${config.home}/modules.d/*.yml
  reload.enabled: false
  • path: 模块配置文件的路径。
  • reload.enabled: 是否启用模块自动重新加载。

3. filebeat.processors

这部分定义了 Filebeat 的处理器,可以用来修改事件数据。

filebeat.processors:
- add_fields:
    targets: ["*"]
    fields:
      environment: "production"
  • add_fields: 添加新的字段到事件中。

4. filebeat.output.elasticsearch

这部分定义了 Filebeat 的输出目标,通常是 Elasticsearch 或 Logstash。

filebeat.output.elasticsearch:
  hosts: ["localhost:9200"]
  index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"
  • hosts: Elasticsearch 或 Logstash 的地址。
  • index: 输出的索引名称,通常包含 Filebeat 版本和日期。

5. filebeat.setup.template.settings

这部分定义了 Elasticsearch 索引模板设置。

filebeat.setup.template.settings:
  index.number_of_shards: 3
  index.codec: best_compression
  _source.enabled: true
  • index.number_of_shards: 索引的分片数。
  • index.codec: 索引的压缩编解码器。
  • _source.enabled: 是否启用源数据存储。

6. filebeat.setup.template.name

这部分定义了 Elasticsearch 索引模板的名称。

filebeat.setup.template.name: "filebeat"

7. filebeat.setup.template.pattern

这部分定义了 Elasticsearch 索引模板匹配的索引名称模式。

filebeat.setup.template.pattern: "filebeat-*"

8. filebeat.setup.ilm.enabled

这部分定义了是否启用索引生命周期管理(ILM)。

filebeat.setup.ilm.enabled: true

9. filebeat.setup.ilm.template_name

这部分定义了 ILM 模板的名称。

filebeat.setup.ilm.template_name: "filebeat"

10. filebeat.setup.ilm.pattern

这部分定义了 ILM 模板匹配的索引名称模式。

filebeat.setup.ilm.pattern: "filebeat-*"

11. filebeat.setup.ilm.policy_name

这部分定义了 ILM 策略的名称。

filebeat.setup.ilm.policy_name: "filebeat-policy"

12. filebeat.setup.ilm.lifecycle.enabled

这部分定义了是否启用 ILM 生命周期管理。

filebeat.setup.ilm.lifecycle.enabled: true

总结

Filebeat 的配置文件 filebeat.yml 包含了输入源、模块、处理器、输出目标等多个部分,通过这些配置,你可以灵活地控制 Filebeat 的行为,以满足不同的日志收集和分析需求。

0