使用 Dataflow 代管式服务运行流水线时,您可以通过 Dataflow 的 Web 监控界面查看该作业和其他任何作业。通过此监控界面,您可以查看相关 Dataflow 作业并与之交互。
您可以使用 Google Cloud 控制台访问 Dataflow 监控界面。此监控界面可以显示以下内容:
- 所有正在运行的 Dataflow 作业和过去 30 天内运行的所有作业的列表。
- 每个流水线的图形表示。
- 有关作业状态、类型和 SDK 版本的详情。
- 运行流水线的 Google Cloud 服务(如 Compute Engine 和 Cloud Storage)相关信息的链接。
- 作业执行期间出现的任何错误或警告。
- 作业的其他诊断信息。
您可以在 Dataflow 监控界面中查看作业可视化工具。这些图表显示流水线作业持续时间内的各种指标,并包含以下信息:
- 步骤级可见性,可帮您确定哪些步骤会导致流水线延迟问题。
- 可揭示出异常行为的统计信息。
- 可帮助确定来源和接收器中的瓶颈问题的 I/O 指标。
访问 Dataflow 监控界面
如需访问 Dataflow 监控界面,请按以下步骤操作:
- 登录 Google Cloud 控制台。
- 选择您的 Google Cloud 项目。
- 打开导航菜单。
- 在 Analytics 中,点击 Dataflow。
此时系统将显示 Dataflow 作业及其状态的列表。如果您没有看到任何作业,则需要运行新作业。如需了解如何运行作业,请参阅 Java 快速入门、Python 快速入门或 Go 快速入门。
作业可能具有以下状态:
- —:监控界面尚未从 Dataflow 服务收到状态。
- 正在运行:作业正在运行。
- 正在启动...:作业已创建,但系统在启动前需要一些时间进行准备。
- 已加入队列:一个 FlexRS 作业已加入队列,或者正在启动 Flex 模板作业(这可能需要几分钟时间)。
- 正在取消…:正在取消作业。
- 已取消:作业已取消。
- 正在排空…:正在排空作业。
- 已排空:作业已被排空。
- 正在更新…:正在更新作业。
- 已更新:作业已更新。
- 成功:作业已成功完成。
- 失败:作业未能完成。
如需详细了解流水线,请点击作业的名称。
访问作业可视化工具
如需访问用于监控作业的图表,请在 Dataflow 监控界面中点击作业名称。此时会显示作业详情页面,其中包含以下信息:
- 作业图:流水线的直观展示
- 执行详情:用于优化流水线性能的工具
- 作业指标:关于作业运行情况的指标
- 费用:关于作业估算费用的指标
- 自动扩缩:与流处理作业自动扩缩事件相关的指标
- 作业信息面板:关于流水线的描述性信息
- 作业日志:Dataflow 服务在作业级层生成的日志
- 工作器日志:Dataflow 服务在工作器级层生成的日志
- 诊断:显示沿所选时间轴发生的错误以及关于流水线的可能建议的表格
- 数据采样:可让您在流水线的每个步骤中观察数据的工具。请参阅使用数据抽样来观察流水线数据。
在作业详情页面中,您可以使用作业图、执行详情、作业指标、费用和自动调节标签页来切换作业视图。
作业图
当您选择特定 Dataflow 作业时,监控界面会提供流水线的图形表示,即作业图。 控制台中的作业图页面还提供了作业摘要、作业日志以及流水线中每个步骤的相关信息。如需详细了解作业图,请参阅 Dataflow 作业图。
作业指标
您可以在 Dataflow 网页界面的 Job metrics
标签页中查看图表。每个指标都会整理到以下信息中心内:
指标概览
流式数据处理指标(仅限流处理流水线)
- 数据新鲜度(无论是否使用 Streaming Engine)
- 系统延迟时间(无论是否使用 Streaming Engine)
- 积压
- 处理(仅限 Streaming Engine)
- 并行处理(仅限 Streaming Engine)
- 持久性(仅限 Streaming Engine)
- 重复项(仅限 Streaming Engine)
- 计时器(仅限 Streaming Engine)
资源指标
输入指标
输出指标
Cloud Monitoring 提醒
费用监控
Google Cloud 控制台中的费用页面会显示当前 Dataflow 作业的估算费用。估算费用的计算方法是:将 Cloud Monitoring 中显示的资源用量指标乘以这些资源在相应作业区域内的价格。
使用费用监控
作业费用估算适用于批量作业和流式作业。Google Cloud 控制台中的费用页面提供以下信息:
- 有关哪些资源占用作业费用以及费用的详细信息。资源包括处理 vCPU、内存、处理的 Dataflow Shuffle 数据或处理的 Streaming Engine 数据,以及 SSD 和 HDD 磁盘使用量。
- 特定时间范围内的费用,例如:从作业开始、过去一小时、过去 24 小时、过去七天和用户指定的时间范围。
您可以使用监控提醒在作业费用超过指定阈值时接收通知。您还可以使用提醒根据您设置的阈值更改作业,例如停止或取消作业。
如需创建 Cloud Monitoring 提醒规则,请点击创建提醒。如需了解如何配置这些提醒,请参阅使用 Cloud Monitoring for Dataflow 流水线。
限制
Dataflow 费用监控不支持 Dataflow Prime 作业和 GPU 指标。
自动扩缩指标
您可以在 Dataflow 监控界面中查看流处理作业的自动扩缩监控图表。这些图表显示流水线作业持续时间内的各种指标,并包含以下信息:
- 作业在任意时间点使用的工作器实例数量
- 自动扩缩日志文件
- 一段时间内的预估积压
- 一段时间内的平均 CPU 利用率
如需了解详情,请参阅监控 Dataflow 自动扩缩。
建议和诊断
Dataflow 提供了一些建议,用于提高作业性能、降低费用以及排查错误。本部分介绍如何查看和解释建议。请注意,某些建议可能与您的使用场景无关。
建议
建议标签页显示 Dataflow 提供的与流水线相关的数据分析。这些数据分析的目标是识别有可能在费用和性能方面进行改善的情况。
更新日期列表示上次观察数据分析的时间。建议将存储 30 天,从更新日期算起。
以编程方式访问建议
如需以编程方式访问建议,请使用 Recommender API。
忽略建议
您可以在 Recommendation Hub 中忽略项目的建议。
如需忽略建议,请点击 Google Cloud 控制台左上角的导航菜单,然后选择首页 > 建议。在 Dataflow 诊断卡片上,点击查看全部,选择要忽略的建议,然后点击忽略。
诊断
日志窗格的诊断标签页会收集并显示流水线中生成的某些日志条目。其中包括指示流水线可能存在问题的消息以及包含堆栈轨迹的错误消息。系统会对收集的日志条目进行重复信息删除,然后合并到错误组中。
错误报告包含以下信息:
- 带有错误消息的错误列表。
- 每个错误发生的次数。
- 直方图,指示每个错误发生的时间。
- 最近发生该错误的时间。
- 错误首次发生的时间。
- 错误的状态。
如需查看特定错误的错误报告,请点击错误列下的说明。随即将显示错误报告页面。如果错误是服务错误,则会显示包含文档(包括进一步步骤)的额外链接(“问题排查指南”)。
如需详细了解该页面,请参阅查看错误。
忽略错误
如需忽略错误消息,请打开诊断标签页,点击要忽略的错误,然后打开解决状态菜单(标记为以下选项之一:待解决 | 已确认 | 已解决 | 已忽略),然后选择已忽略。
后续步骤
了解如何使用执行详情来优化 Dataflow 作业
探索 Cloud Monitoring 以创建提醒并查看 Dataflow 指标(包括自定义指标)
详细了解如何构建生产就绪型数据流水线