Google PubSub不会在每条新消息中触发功能

问题描述

我有一个Google PubSub流,每天都添加了一组地址。我希望每个这些地址都由触发的Google Cloud Function处理。但是,我看到的是,即使每天都有新消息添加到流中,每个地址也只处理一次。

我的问题是,如果每天将相同的值添加到流中,它将作为新消息处理吗?还是将其视为重复消息?

这是我所看到的情况。每天都会触发locations功能,并将每个位置发布到locations主题。在大多数情况下,这些消息与前一天的消息相同。它们唯一的更改是某个位置关闭添加了新位置。但是,我看到的是locations Cloud Function从未收到许多location_metrics消息。

函数流程如下:

每天在2a触发主题(称为locations_trigger)>触发器locations功能>发送至locations主题>触发器location_metrics功能>发送至{{ 1}}主题

对于location_metrics功能,将触发它并正确返回所有地址,然后将其发送到locations主题。我不会将整个功能在这里,因为它没有问题。对于它检索到的每个位置,日志中都会显示“发布成功”消息。这是将位置详细信息发送给主题的部分。

locations

发送的示例 project_id = "project_id" topic_name = "locations" topic_id = "projects/project_id/topics/locations" publisher = pubsub_v1.PublisherClient() topic_path = publisher.topic_path(project_id,topic_name) try: publisher.publish(topic_path,data=location_details.encode('utf-8')) print("publish successful: ",location) except Exception as exc: print(exc) 有效负载是: location

{"id": "accounts/123456/locations/123456","name": "Business 123 Main St Somewhere NM 10010"}函数如下所示:

location_metrics

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)