如何获取单个 PubsubMessage 的 MessageID,以将其保存在 BigQuery for PubsubT



>我创建了一个 PubsubToBigQuery 数据流,用于存储我的事件日志,方法是使用同一个 PubsubToBigQuery 数据流模板的 google 模板。
我做了一些转换,并成功地将日志保存到 BigQuery。但是,我需要将 pubsub 消息的唯一 MessageID(PubsubMessage.getMessageId())保存到 BigQuery 表中,以便进一步使用。
如何实现?

要将 MessageID 存储到 BigQuery 中,您必须将其保留在将 PubsubMessages 转换为 Bigtable Rows 的 DoFn 中。

如果要使用此模板,则看起来在"ProcessUdf"中会发生这种情况,其中仅检查有效负载。 您必须对其进行编辑才能将消息 ID 传递给 javascript UDF(或以其他方式将其合并到返回的(json 格式)结果中)。如果你不需要一些超级通用的东西,那么简单地提供一个DoFn<PubsubMessage, TableRow>并跳过所有json/javascript的东西可能会更有效,更简单。

最新更新