在旧版本的 logstash 中使用 filebeat
using filebeat with old version of logstash
我应该将日志发送到 logstash 实例。
不幸的是,它是 运行 一个非常古老的 logstash 实例(不支持节拍输入)。
它有一个正常的 tcp 输入,如
tcp {
port => 8888
codec => "json"
}
这是filebeat的当前配置
output.logastash:
hosts: ["${LOGSTASH_HOST}:8888"]
有没有办法配置 filebeat,使其输出被 logstash 的 tcp 输入接受?
不,filebeat 使用 beats 协议输出,不能使用 tcp 输入。
您有一些解决此问题的选项。
升级 Logstash: 在我推荐任何 hack 或使用已弃用的软件之前,最好的选择是简单地将 logstash 升级到现代版本,已经有很多一些重大更改和大量性能升级。
手动将beats输入添加到Logstash:您可以将beats输入添加到logstash 2.x with /opt/logstash/bin/logstash-plugin install logstash-input-beats
使用logstash-forwarder: Filebeats的前身logstash-forwarder is deprecated, but would work with the lumberjack input of older logstashes
使用中介: 如果我们查看 output options supported by filebeat and the inputs supported by Logstash >=1.5,您可以在 filebeat 和 logstash 之间使用 kafka 或 redis,它们都是兼容.
我应该将日志发送到 logstash 实例。
不幸的是,它是 运行 一个非常古老的 logstash 实例(不支持节拍输入)。
它有一个正常的 tcp 输入,如
tcp {
port => 8888
codec => "json"
}
这是filebeat的当前配置
output.logastash:
hosts: ["${LOGSTASH_HOST}:8888"]
有没有办法配置 filebeat,使其输出被 logstash 的 tcp 输入接受?
不,filebeat 使用 beats 协议输出,不能使用 tcp 输入。
您有一些解决此问题的选项。
升级 Logstash: 在我推荐任何 hack 或使用已弃用的软件之前,最好的选择是简单地将 logstash 升级到现代版本,已经有很多一些重大更改和大量性能升级。
手动将beats输入添加到Logstash:您可以将beats输入添加到logstash 2.x with
/opt/logstash/bin/logstash-plugin install logstash-input-beats
使用logstash-forwarder: Filebeats的前身logstash-forwarder is deprecated, but would work with the lumberjack input of older logstashes
使用中介: 如果我们查看 output options supported by filebeat and the inputs supported by Logstash >=1.5,您可以在 filebeat 和 logstash 之间使用 kafka 或 redis,它们都是兼容.