debian

如何自定义Debian上Filebeat的输出

小樊
43
2025-05-19 08:46:58
栏目: 智能运维

在Debian上自定义Filebeat的输出,您需要编辑Filebeat的配置文件filebeat.yml

  1. 打开终端。

  2. 使用文本编辑器打开filebeat.yml文件。例如,使用nano编辑器:

sudo nano /etc/filebeat/filebeat.yml
  1. filebeat.yml文件中,找到output部分。如果没有这个部分,您可以在filebeat.yml文件的末尾添加一个。

  2. output部分下,您可以定义多个输出模块。例如,如果您想将日志发送到Elasticsearch和Logstash,您可以这样配置:

output:
  elasticsearch:
    hosts: ["localhost:9200"]
    index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"
  logstash:
    hosts: ["localhost:5000"]

在这个例子中,我们将日志发送到本地的Elasticsearch实例(端口9200)和Logstash实例(端口5000)。您可以根据需要修改这些值。

  1. 如果您想为特定的事件类型定义不同的输出,您可以使用processors部分。例如,将错误日志发送到另一个Elasticsearch索引:
processors:
- if [loglevel] == "error" {
    drop_fields: ["message", "beat", "source", "offset"]
    add_fields:
      output: "error_logs"
  }

output:
  elasticsearch:
    hosts: ["localhost:9200"]
    index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"
    when_contains:
      output: "error_logs"
      field: "output"

在这个例子中,我们使用processors部分检查日志级别是否为"error"。如果是,我们将事件发送到名为"error_logs"的输出。

  1. 完成更改后,保存并关闭filebeat.yml文件。

  2. 重新启动Filebeat服务以应用更改:

sudo systemctl restart filebeat

现在,Filebeat将按照您自定义的输出配置发送日志。

0
看了该问题的人还看了