GCP Dataflow¶
采集 GCP Dataflow 作业状态、工作器资源、数据积压、吞吐量和流水线处理延迟等指标。
配置¶
安装 Func¶
推荐开通 观测云 集成 - 扩展 - 托管版 Func:一切前置条件都自动安装好,请继续脚本安装。
如果自行部署 Func,参考自行部署 Func。
安装脚本¶
- 登录 Func 控制台,点击【脚本市场】,进入 观测云 脚本市场,搜索
integration_gcp_dataflow。 - 点击【安装】后,输入相应的参数:账户文件名、Target Principal、账号名。
- 点击【部署启动脚本】,系统会自动创建
Startup脚本集,并自动配置相应的启动脚本。 - 开启后可以在「管理 / 自动触发配置」中看到对应的自动触发配置。点击【执行】可立即执行一次,稍等片刻后可查看执行任务记录及日志。
验证¶
- 在「管理 / 自动触发配置」确认对应任务已存在,并通过任务记录及日志检查是否有异常。
- 在 观测云「基础设施 / 自定义」中查看是否存在对应资产信息。
- 在 观测云「指标」中查看是否存在
gcp_dataflow指标集及对应监控数据。
指标¶
GCP Dataflow 指标在 gcp_dataflow 指标集下,原始指标来自 Cloud Monitoring 的 dataflow.googleapis.com/ 命名空间。以下是部分核心指标说明,完整指标类型可参考 Google Cloud Dataflow 指标。
| 指标 | 原始指标 | 描述信息 | 单位 |
|---|---|---|---|
| job_active_worker_instances | job/active_worker_instances |
Streaming Engine 作业的活跃工作器实例数 | Count |
| job_aggregated_worker_utilization | job/aggregated_worker_utilization |
工作器池汇总利用率 | % |
| job_backlog_bytes | job/backlog_bytes |
各阶段尚未处理的输入字节数 | Bytes |
| job_backlog_elements | job/backlog_elements |
各阶段尚未处理的元素数 | Count |
| job_current_num_vcpus | job/current_num_vcpus |
作业当前使用的 vCPU 数量 | Count |
| job_current_shuffle_slots | job/current_shuffle_slots |
作业当前使用的 Shuffle 槽数 | Count |
| job_data_watermark_age | job/data_watermark_age |
数据水印延迟 | s |
| job_estimated_bytes_consumed_count | job/estimated_bytes_consumed_count |
作业阶段消耗的估算字节数 | Bytes |
| job_estimated_bytes_produced_count | job/estimated_bytes_produced_count |
PTransform 产生的估算字节数 | Bytes |
| job_is_bottleneck | job/is_bottleneck |
流水线阶段是否为瓶颈 | Bool |
| job_is_failed | job/is_failed |
作业失败状态,值为 1 表示失败 | Count |
| job_memory_capacity | job/memory_capacity |
当前分配给作业全部工作器的内存 | Bytes |
| job_system_lag | job/system_lag |
数据项已处理或等待处理的最长时长 | s |
| job_target_worker_instances | job/target_worker_instances |
作业需要的目标工作器实例数 | Count |
| job_total_memory_usage_time | job/total_memory_usage_time |
作业分配的总内存使用时间 | GiBy.s |