You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何延长调用Cloud Run Job的API请求超时时间

解决Cloud Run Job API请求超时导致Airflow DAG失败的问题

你遇到的问题是Airflow调用Cloud Run Job的API请求默认超时时间为900秒(15分钟),但Job实际需要运行30分钟,导致operation.result()提前触发超时报错,而Cloud Run Job本身仍能正常执行完成。要解决这个问题,只需调整API请求的等待超时时间即可,无需修改Cloud Run Job自身的配置。

修改你的代码如下:

def run_cloudrun_job(**kwargs):
        client = run_v2.JobsClient()
        request = run_v2.RunJobRequest(
            name=f"projects/project_id/locations/region/jobs/job_name",
            overrides=overrides,
            )
        operation = client.run_job(request=request)
        # 设置超时时间为30分钟(1800秒),与你的Job执行时长匹配
        response = operation.result(timeout=1800)      

补充说明:

  • timeout参数单位为秒,可根据Job实际执行时长灵活调整,比如Job最长可能运行40分钟,就设置为2400秒。
  • 如果需要全局统一设置所有API请求的超时时间,也可以在创建JobsClient时配置:
from google.api_core.client_options import ClientOptions

def run_cloudrun_job(**kwargs):
        client_options = ClientOptions(timeout=1800)
        client = run_v2.JobsClient(client_options=client_options)
        request = run_v2.RunJobRequest(
            name=f"projects/project_id/locations/region/jobs/job_name",
            overrides=overrides,
            )
        operation = client.run_job(request=request)
        response = operation.result()      

这样设置后,Airflow的DAG任务会等待Cloud Run Job执行完成后再结束,不会因API请求超时提前失败。

内容的提问来源于stack exchange,提问作者Aym

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 18:18:18