加载外部配置文件编辑

Filebeat 可以为输入和模块加载外部配置文件,允许您将配置分离到多个较小的配置文件中。有关详细信息,请参阅输入配置模块配置部分。

在具有 POSIX 文件权限的系统上,所有 Beats 配置文件都受所有权和文件权限检查的约束。有关更多信息,请参阅配置文件所有权和权限

输入配置编辑

对于输入配置,您可以在filebeat.yml文件的filebeat.config.inputs部分中指定path选项。例如

filebeat.config.inputs:
  enabled: true
  path: inputs.d/*.yml

path Glob 找到的每个文件都必须包含一个或多个输入定义的列表。

每个外部配置文件的第一行必须是以- type开头的输入定义。确保从此文件中省略filebeat.config.inputs行。所有输入类型配置选项都必须在每个外部配置文件中指定。不支持在全局filebeat.config.inputs级别指定这些配置选项。

外部配置文件示例

- type: log
  paths:
    - /var/log/mysql.log
  scan_frequency: 10s

- type: log
  paths:
    - /var/log/apache.log
  scan_frequency: 5s

至关重要的是,两个正在运行的输入的定义文件路径不能重叠。如果多个输入同时采集同一个文件,则可能导致意外行为。

模块配置编辑

对于模块配置,您可以在filebeat.yml文件的filebeat.config.modules部分中指定path选项。默认情况下,Filebeat 加载在modules.d目录中启用的模块配置。例如

filebeat.config.modules:
  enabled: true
  path: ${path.config}/modules.d/*.yml

如果要使用modules命令启用和禁用模块配置,则path设置必须指向modules.d目录。

Glob 找到的每个文件都必须包含一个或多个模块定义的列表。

每个外部配置文件的第一行必须是以- module开头的模块定义。确保从此文件中省略filebeat.config.modules行。

例如

- module: apache
  access:
    enabled: true
    var.paths: [/var/log/apache2/access.log*]
  error:
    enabled: true
    var.paths: [/var/log/apache2/error.log*]