加载外部配置文件

编辑

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*]