如何使用Filebeat

时间:2017-11-01 12:42:59

标签: elasticsearch rabbitmq

我们使用ELK来控制我们的日志并在Kibana中显示它们。 我们有大约30种不同的日志类型,我们从网格机器和客户端机器都发送。

客户端机器使用filebeat - > logstash - > elastic - > Kibana

我想更改配置:
 的 filebeat - > logstash - >弹性 - > Kibana
于:
filebeat - >的RabbitMQ - > logstash - >弹性 - > Kibana

在弹性方面,我创建了这个yml示例 - 当RabbitMQ不是them之一时。 是否可以这样配置我们的系统? 或者我必须使用:
filebeat - > logstash1 - >的RabbitMQ - > logstash2 - >弹性 - > Kibana

2 个答案:

答案 0 :(得分:3)

我在这种情况下不熟悉RabbitMQ,但这似乎是Beats的Github存储库中的一个开放问题:

https://github.com/elastic/beats/issues/581

还有来自Elastic论坛的帖子表明filebeat没有插件支持,因此我猜测第一个选项是

https://discuss.elastic.co/t/filebeat-rabbitmq-plugin/55189

Logstash肯定支持rabbitmq作为输出:

https://www.elastic.co/guide/en/logstash/current/plugins-outputs-rabbitmq.html

答案 1 :(得分:0)

最后,我发现了FileBeat输出plugin的一个不错的实现(尽管它不是一个“正式的”实现)。因为正确的Beats团队不会支持RabbitMQ插件,所以有人亲自写了它。

在Summery中,要使用plugin,您应该执行以下操作:

  1. main.go文件中:
    软件包主要

    import (
        "os"
    
        _ "github.com/sidleal/mqttout"
    
        "github.com/sidleal/countbeat/cmd"
    )
    
    func main() {
            if err := cmd.RootCmd.Execute(); err != nil {
                os.Exit(1)
            }
    }
    
  2. 在配置文件中(yourbeat.yml):
    配置文件

    output.mqtt:
        host: "127.0.0.1"
        port: 1883
        topic: "mytopic"
        user: "myvhost:myuser"
         password: "mypassword"
    
  3. 将amq.topic交换绑定到所需的队列,将主题放入“路由密钥”。