在Debian上自定义Filebeat的输出,您需要编辑Filebeat的配置文件filebeat.yml
打开终端。
使用文本编辑器打开filebeat.yml
文件。例如,使用nano编辑器:
sudo nano /etc/filebeat/filebeat.yml
在filebeat.yml
文件中,找到output
部分。如果没有这个部分,您可以在filebeat.yml
文件的末尾添加一个。
在output
部分下,您可以定义多个输出模块。例如,如果您想将日志发送到Elasticsearch和Logstash,您可以这样配置:
output:
elasticsearch:
hosts: ["localhost:9200"]
index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"
logstash:
hosts: ["localhost:5000"]
在这个例子中,我们将日志发送到本地的Elasticsearch实例(端口9200)和Logstash实例(端口5000)。您可以根据需要修改这些值。
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"的输出。
完成更改后,保存并关闭filebeat.yml
文件。
重新启动Filebeat服务以应用更改:
sudo systemctl restart filebeat
现在,Filebeat将按照您自定义的输出配置发送日志。