logstash kafka output 输出原始数据格式

本文介绍了如何使用Logstash从Kafka主题读取消息并将其转发到另一个Kafka集群的Topic中。在初始配置中,输出的消息前会添加时间和主机信息。通过添加`codec plain`并指定`message`格式,成功解决了这一问题,实现了原始数据的正确输出。
摘要由CSDN通过智能技术生成

有个场景需要从kafka topic中读出message,然后转到另一个kakfa集群的topic中,为省事就用了logstash。
配置如下:

input {
  kafka {
    bootstrap_servers => 'client1:9092,client2:9092'
    group_id => 'mygroup'
    topics => ["topic-info"]
    codec => 'plain'
  }
}
output {
  #stdout { codec => rubydebug }
  kafka {
    bootstrap_servers => 'client1:9092,client2:9092'
    topic_id => 'topic-out'
    codec => plain 
  }
}

但消息输出:

2017-11-08T12:
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Logstash是一个开源的数据收集引擎,可以从各种来源(如日志文件、数据库、消息队列等)收集、转换和发送数据。Kafka是一个分布式的流处理平台,用于高吞吐量的实时数据提取、传输和存储。 在Logstash中使用Kafka作为数据输入或输出的插件可以实现将数据从Kafka中消费或者将数据发送到Kafka中。 要使用LogstashKafka进行集成,首先需要安装LogstashKafka,并确保它们能够正常运行。然后,在Logstash的配置文件中配置Kafka插件,指定Kafka的相关参数(如主题、分区等),以及数据的格式转换和过滤规则。 例如,要从Kafka中消费数据,可以使用Logstashkafka插件作为输入插件,并指定要消费的主题和分区。配置示例: ``` input { kafka { bootstrap_servers => "kafka_host:port" topics => ["topic1", "topic2"] group_id => "consumer_group_id" } } output { stdout { codec => json_lines } } ``` 上述配置中,Logstash将从指定的Kafka集群(bootstrap_servers)中消费topic1和topic2的数据,并将其输出到标准输出(stdout)。 类似地,要将数据发送到Kafka,可以使用Logstashkafka插件作为输出插件,并指定要发送的主题和Kafka集群的配置。配置示例: ``` input { stdin { codec => json_lines } } output { kafka { bootstrap_servers => "kafka_host:port" topic_id => "topic_name" } } ``` 上述配置中,Logstash将从标准输入(stdin)中读取数据,并将其发送到指定的Kafka集群的topic_name主题中。 需要注意的是,配置文件中的参数和配置选项可能因LogstashKafka的版本而略有差异,具体可参考官方文档或相关资源进行配置。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值