使用 PubSubIO Beam 源读取消息后,是否可以以某种方式获取 DoFn 中 Pub/Sub 消息的 messageId 字段?
我需要由 Pub/Sub 服务分配的默认 ID。我想记录它以用于调试目的。
对我来说,使用唯一 id 的自定义属性和 withIdAttribute() 方法是不可能的,因为在这种情况下我对发布者没有影响力。
我使用 Dataflow Java SDK 2.2.0 版本。
最佳答案
支持reading the Pubsub message id was added从 Beam v2.16.0 开始。要打开它,请在管道设置中将 .readMessages()
替换为 .readMessagesWithMessageId()
,然后就像 message.getMessageId()
一样简单> 更改之后。
关于java - 使用 Apache Beam 从 PubSubIO 获取 Pub/Sub 消息的 messageId 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48270047/