【问题标题】:how to send key value to kafka via Flume如何通过 Flume 向 kafka 发送键值
【发布时间】:2019-12-02 08:03:06
【问题描述】:

我可以通过 Flume 向 kafka 发送消息,但是如何向 kafka 发送键值消息?

比如我使用tailf日志文件作为源,如何发送键值消息?

# Describe/configure the source
a1.sources.r1.type = exec
a1.sources.r1.command =tail -F /apps/logs/mysql_status.log 

【问题讨论】:

  • 注意:你应该改用taildir source

标签: apache-kafka flume flume-ng


【解决方案1】:

你必须使用 Flume 标头

Kafka Sink 使用 FlumeEvent 标头中的主题和关键属性将事件发送到 Kafka。如果标题中存在主题,则事件将发送到该特定主题,覆盖为接收器配置的主题。如果 header 中存在 key,则 Kafka 将使用该 key 来对主题分区之间的数据进行分区

可以使用拦截器添加标题

.http://flume.apache.org/releases/content/1.9.0/FlumeUserGuide.html#flume-interceptors

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-26
    • 1970-01-01
    • 2015-12-16
    • 1970-01-01
    • 2017-05-25
    • 1970-01-01
    • 2016-08-29
    相关资源
    最近更新 更多