【问题标题】:GCP BigQuery - Verify successful execution of stored procedureGCP BigQuery - 验证存储过程的成功执行
【发布时间】:2022-10-05 07:35:45
【问题描述】:

我有一个将记录插入 BQ 表的 BigQuery 例程。 我希望有一个 Eventarc 触发器来触发 Cloud Run,并在成功执行 BigQuery 例程时执行一些操作。

从 Cloud Logging 中,我可以看到两个似乎可以确认 BQ 例程成功执行的事件。 protoPayload.methodName=\"google.cloud.bigquery.v2.JobService.InsertJob\"

protoPayload.metadata.tableDataChange.insertedRowsCount

但是,这并没有给我作业 ID。

所以,我在看事件 -
protoPayload.methodName=\"jobservice.jobcompleted\"

如果protoPayload.serviceData.jobCompletedEvent.job.jobStatus.error 为空,那么假设存储过程执行成功是否正确?

谢谢!

  • 您可以尝试使用protoPayload.methodName=\"jobservice.insert\" 吗?这包含jobIDerror count(如果有的话)和jobstatus
  • 作业(即查询)调用您的存储过程。因此,如果工作OK,存储程序也OK!
  • 嗨@loki,您的问题解决了吗?
  • 感谢大家的帮助;我使用protoPayload.methodName=\"jobservice.jobcompleted\" 作为方法,因为它根据目的提供了StateresourceName

标签: google-cloud-platform google-bigquery google-cloud-logging


【解决方案1】:

在这种情况下,决定使用protoPayload.methodName="jobservice.jobcompleted"。 它提供protoPayload.requestMetadata.resourceName 的作业ID,protoPayload.serviceData.jobCompletedEvent.job.jobStatus.state 之类的状态以及protoPayload.serviceData.jobCompletedEvent.job.jobStatus.error 之类的错误(如果有)

【讨论】:

    猜你喜欢
    • 2020-01-09
    • 1970-01-01
    • 1970-01-01
    • 2018-10-20
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    • 2019-02-28
    • 1970-01-01
    相关资源
    最近更新 更多