我正在使用工作流来编排 2 个数据流作业。
我想使用apirest获取作业状态,到目前为止,我无法从作业中获取当前状态。
main:
params: [input]
steps:
- launch:
call: http.get
args:
url: ${"https://dataflow.googleapis.com/v1b3/projects/tough-mechanic-412801/locations/us-east1/jobs/2024-02-05_16_13_09-17600975029932351234?view=JOB_VIEW_SUMMARY"}
auth:
type: OAuth2
result: jobResponse
这是我尝试获取状态的方式,但它似乎不存在。
这帮助我了解结构,但没有成功。
以下是工作流程 yaml 的输出:
null
根据这个link,网址是正确的,我错过了什么吗? 所需的输出是为了了解作业状态,或者作业是否为 JOB_STATE_DONE。
在最后一个链接中,gcp 提供了一个 api 资源管理器来测试,它可以工作并给了我响应..但它没有在工作流程中。
按照此公共参考中概述的信息,我能够返回我的 Dataflow 作业状态,如下所示:
assign:
- project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}
- location: "us-east1"
- job_id: "2024-02-06_07_45_57-18000083319361085516"
- get_job_status:
call: googleapis.dataflow.v1b3.projects.locations.jobs.get
args:
projectId: ${project_id}
location: ${location}
jobId: ${job_id}
result: job_details
- return_status:
return: ${"Job Status " + job_details.currentState}