本页面介绍了 Cloud Storage 订阅的一些常见问题排查提示。
检查 Cloud Storage 订阅的状态
如需检查订阅的状态,请执行以下步骤:
在 Google Cloud 控制台中,转到 Pub/Sub 订阅页面。
检查 Cloud Storage 订阅的状态图标。
如果图标是一个绿色对勾标记,则表示订阅健康状况良好。
如果该图标是红色感叹号,则表示订阅处于错误状态。
点击 Cloud Storage 订阅。
系统会打开订阅详情页面。
查看订阅状态以查看错误消息。
根据错误消息,转到本页面中的相关部分排查问题。
问题解决后,订阅最终会恢复为正常运行状态。
无法创建或更新订阅
以下是如果您在创建或更新 Cloud Storage 订阅时遇到问题,可能会遇到的一些常见问题。
“未找到存储分区”错误
如果您在创建或更新订阅工作流中指定的存储桶不存在,则该工作流会返回 bucket not found
错误。在 Google Cloud 控制台中,该消息类似于以下内容:
The Cloud Storage bucket specified cannot be found.
如需解决此问题,请创建存储桶或更新您的 Cloud Storage 订阅以使用现有存储桶。
服务账号错误
如果您尚未为 Pub/Sub 服务帐号配置适当的权限,则创建或更新订阅工作流会返回错误。在 Google Cloud 控制台中,该消息类似于以下内容:
Cloud Pub/Sub did not have the necessary permissions configured to access
the provided bucket my-bucket (or the bucket may not exist).
Please verify that the service account
service-112233445566@gcp-sa-pubsub.iam.gserviceaccount.com
was granted the Storage Legacy Bucket Reader and Storage Object Creator
roles for the provided bucket.
如需解决此问题,请检查服务帐号是否具有正确的权限。
订阅状态显示红色感叹号
如果您在创建订阅后修改存储桶,则可能会影响 Pub/Sub 向存储桶写入消息的方式。如果某项更改导致出现问题,相应订阅的状态字段会设置为错误状态。
在订阅详情页面中,检查 Subscription state
字段的状态。Subscription state
字段提供更具体的错误,可能是以下某种错误:
当 Pub/Sub 订阅处于错误状态时,消息不会写入存储桶,并且会保留在订阅积压消息中。请注意,如果已配置,系统不会将消息传送到附加的死信主题。未确认的消息会保留 message_retention_duration
中设置的时间段(默认为 7 天)。
订阅处理消息的速度非常慢
某些订阅设置可能会降低消息处理速度。
例如,在 Cloud Storage 订阅上启用消息排序可能会导致消息写入 Cloud Storage,但不会最终确定,使用同一排序键的后续消息将延迟。为了获得更好的性能,请考虑在发布消息时使用更广泛的排序键,或在您的用例不需要时停用消息排序。
如果将 Cloud Storage 订阅的文件大小上限设置得过低,也会对性能产生不利影响。如果文件大小上限过低,可能会导致 Pub/Sub 创建多个 Cloud Storage 对象,而每个对象中的消息数量较少。创建和最终确定对象会产生额外的开销,会降低消息处理速度。为了提高性能,请考虑提高 Cloud Storage 订阅的文件大小上限设置或移除文件大小限制。
配额限制
另一种可能是,您的项目已达到其 Pub/Sub 推送吞吐量配额 (pubsub.googleapis.com/regionalpushsubscriber
)。如需检查是否遇到配额限制,请检查推送请求指标 (subscription/push_request_count
) 中是否有任何 resource_exhausted
错误。
查看项目的配额,并验证您是否有足够的剩余配额。前往 Pub/Sub 订阅所在项目中的 IAM 和管理 > 配额。搜索 pubsub.googleapis.com/regionalpushsubscriber
配额。如果您即将达到配额限制,可以申请更高的配额。
订阅创建的文件数量超出预期
为了提高可伸缩性,您的 Cloud Storage 订阅可以由多个 Pub/Sub 后端处理。每个后端都会写入单独的 Cloud Storage 文件中,因此您可能会观察到 Cloud Storage 创建的文件数量超出预期,尤其是对于低吞吐量工作负载。
这是正常现象。如果您想减少订阅创建的文件数量,可以考虑提高订阅上的文件批处理设置,以允许处理更大的文件。您还可以通过将文件组合为数量较少的较大文件来进行后处理。
后续步骤
- 如果您的 Cloud Storage 订阅仍有问题,请参阅获取支持。