【问题标题】:sending different output using same logstash file使用相同的logstash文件发送不同的输出
【发布时间】:2019-01-30 18:01:55
【问题描述】:

我需要我的 logstash conf 文件向 kafka 主题发送消息,以指示处理的文档已发送到 elasticsearch。我已经准备好我的 logstash 文件来构建要发送到 ElasticSearch 的数据,但我需要通过同一个 logstash 文件向 kafka 主题发布“是”或“否”消息。

【问题讨论】:

  • 你能解释一下为什么你想这样做吗?

标签: elasticsearch apache-kafka logstash


【解决方案1】:

您可以使用多个输出,例如

output 
    { 
        #output to console
        stdout { 
            codec => rubydebug 
               } 

        #output to elasticsearch    
        elasticsearch {
            hosts => [ "192.168.1.245:9201" ]
                      }

        #output to kafka          
        kafka {
            codec => json
            topic_id => "mytopic"
              }   

    }

【讨论】:

    【解决方案2】:

    首先,您需要在字段中包含是/否值,我们称之为值。

    然后添加一个 kafka 输出,使用普通编解码器使用格式选项添加是/否值:

    output {
    
      #rest of your output configuration
    
      kafka {
        ...
        codec => plain {format => "%{[value]}"}
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-17
      相关资源
      最近更新 更多