将日志输入配置迁移到 filestream

编辑

log 输入配置迁移到 filestream

编辑

filestream 输入自 7.14 版本起已正式发布,强烈建议您迁移现有的 log 输入配置。filestream 输入相比旧的 log 输入有许多改进,例如可配置的解析器顺序等等。

log 输入已被弃用,最终将从 Filebeat 中删除。我们不会修复 log 输入的新问题或添加任何增强功能。我们的重点是 filestream

仅当您在独立的 Filebeat 配置中手动定义了 log 输入时,才需要进行此手动迁移。所有仍在底层使用 log 输入的集成或模块最终将自动迁移,而无需用户执行任何其他操作。

在本指南中,您将学习如何迁移现有的 log 输入配置。

您必须将 log 输入替换为 filestream 输入,确保在启动带有新的 filestream 输入的 Filebeat 之前,已从配置中删除了所有旧的 log 输入。运行指向同一文件的旧 log 输入和新的 filestream 输入将导致数据重复。

以下示例显示了三个 log 输入

filebeat.inputs:
 - type: log
   enabled: true
   paths:
     - /var/log/java-exceptions*.log
   multiline:
    pattern: '^\['
    negate: true
    match: after
  close_removed: true
  close_renamed: true

- type: log
  enabled: true
  paths:
    - /var/log/my-application*.json
  scan_frequency: 1m
  json.keys_under_root: true

- type: log
  enabled: true
  paths:
    - /var/log/my-old-files*.log
  tail_files: true

在此示例中,假设 log 输入用于从以下文件收集日志。显示了每个文件的数据收集进度。

/var/log/java-exceptions1.log (100%)
/var/log/java-exceptions2.log (100%)
/var/log/java-exceptions3.log (75%)
/var/log/java-exceptions4.log (0%)
/var/log/java-exceptions5.log (0%)
/var/log/my-application1.json (100%)
/var/log/my-application2.json (5%)
/var/log/my-application3.json (0%)
/var/log/my-old-files1.json (0%)