如何延长Google Cloud Dataflow作业TTL,找回历史作业排查性能退化?
Google Cloud Dataflow作业TTL延长及旧作业找回操作指南
重要说明
要是作业已经超过默认30天TTL被自动删除,那是找不回来的。下面的操作仅适用于未被清理的作业,或是用来给后续新作业设置更长的保留时长。
一、给仍在保留期的作业延长TTL
用gcloud命令行操作
- 先确认已安装gcloud SDK并完成初始化,切换到你的目标项目:
gcloud config set project 你的项目ID - 先查看目标作业当前的TTL配置:
gcloud dataflow jobs describe 你的作业ID --format="value(jobMetadata.ttl)" - 更新TTL时长,比如设置为90天(换算成秒是7776000):
gcloud dataflow jobs update 你的作业ID --ttl=7776000
用Cloud Console修改(部分作业支持)
- 打开Dataflow作业列表,点击进入目标作业的详情页
- 在详情页的「设置」或「配置」板块找到「保留时长」选项,直接调整天数即可(部分旧版本作业可能不支持控制台修改,优先用命令行更稳妥)
二、给新作业设置默认TTL(避免后续丢失)
创建作业时直接指定
- 用gcloud提交作业时,添加
--ttl参数:gcloud dataflow jobs run 你的作业名 \ --gcs-location gs://你的存储桶路径/模板文件 \ --ttl=7776000 \ --parameters 参数1=值1,参数2=值2 - 用模板创建作业时,在控制台的「高级选项」里找到「作业保留时长」,直接填写想要的天数
设置项目级全局默认TTL(需管理员权限)
- 打开Cloud Console的「组织政策」页面
- 搜索
dataflow.jobTtl政策 - 编辑政策,设置默认的TTL时长(单位为秒),将配置应用到目标项目即可
三、旧作业已删除?试试这些替代排查方法
要是目标作业已被清理无法找回,可以通过以下方式排查性能退化问题:
- 查看Cloud Monitoring中Dataflow的历史指标(如处理延迟、吞吐量、资源使用率),默认保留60天
- 检查作业运行期间的Cloud Logs日志,日志保留时长可单独配置(最长365天)
- 查看GCS存储中的作业临时文件、输出数据,对比不同时间段的作业输出特征
内容的提问来源于stack exchange,提问作者bill
相关产品推荐
相关产品推荐

