【发布时间】:2018-05-27 21:20:34
【问题描述】:
我正在使用 apache 通量研究拓扑。目前,strom 从头开始获取消息,但我希望它只从 kafka 获取最新消息。
我正在 YAML 文件中编写拓扑。
这就是我的 spoutConfig 的样子:
- id: "stringScheme"
className: "org.apache.storm.kafka.StringScheme"
- id: "stringMultiScheme"
className: "org.apache.storm.spout.SchemeAsMultiScheme"
constructorArgs:
- ref: "stringScheme"
- id: "zkHosts"
className: "org.apache.storm.kafka.ZkHosts"
constructorArgs:
- "172.25.33.191:2181"
- id: "spoutConfig"
className: "org.apache.storm.kafka.SpoutConfig"
constructorArgs:
- ref: "zkHosts"
- "blockdata"
- ""
- "myId"
properties:
- name: "scheme"
ref: "stringMultiScheme"
- name: "ignoreZkOffsets"
value: true
- name: "startOffsetTime"
ref: "XXXXXXXXX"
现在,我被困住了。如何将 startOffsetTime 设置为正确的函数以仅从 kafka 获取最新消息?
我试过 ref:"LatestTime",但无论我放什么,它都会给我错误:
java.lang.IllegalArgumentException: Can not set long field org.apache.storm.kafka.KafkaConfig.startOffsetTime to null value
【问题讨论】: