Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
本页介绍了如何访问和使用 Cloud Composer 环境的监控信息中心。
如需有关监控关键环境指标的教程,请参阅使用关键指标监控环境健康状况和性能。
如需详细了解特定指标,请参阅使用 Cloud Monitoring 监控环境。
访问监控信息中心
该监控信息中心包含指标和图表,用于监控环境中运行的 DAG 的趋势,以及识别 Airflow 组件和 Cloud Composer 资源的问题。
如需访问环境的监控信息中心,请执行以下操作:
在 Google Cloud 控制台中,前往环境页面。
在环境列表中,点击您的环境名称。环境详情页面会打开。
转到监控标签页。
为指标设置提醒
点击监控卡片角落的铃铛图标,即可为指标设置提醒。
![为 Monitoring 信息中心内显示的指标创建提醒](https://cloud.google.com/static/composer/docs/images/monitoring-dashboard-alert.png?authuser=1&hl=zh-cn)
在 Monitoring 中查看指标
您可以在 Monitoring 中查看指标的详细情况。
如需从 Cloud Composer 监控信息中心导航到该处,请点击指标卡片右上角的三个点,然后选择在 Metrics Explorer 中查看。
![在 Metrics Explorer 的 Monitoring 信息中心内查看指标](https://cloud.google.com/static/composer/docs/images/monitoring-view-metrics.png?authuser=1&hl=zh-cn)
指标说明
每个 Cloud Composer 环境都有自己的监控信息中心。特定环境的监控信息中心上显示的指标仅跟踪此环境的 DAG 运行、Airflow 组件和环境详细信息。例如,如果您有两个环境,信息中心不会汇总这两个环境的指标。
环境概览
环境指标 | 说明 |
---|---|
环境健康情况(Airflow 监控 DAG) | 显示 Composer 部署的运行状况的时间轴。绿色状态仅反映 Composer 部署的状态。这并不意味着所有 Airflow 组件都正常工作并且 DAG 能够运行。 |
调度程序检测信号 | 显示 Airflow 调度程序的检测信号的时间轴。检查是否存在红色区域,以识别 Airflow 调度程序问题。如果您的环境有多个调度器,只要至少有一个调度器响应,则心跳状态为正常。 |
Web 服务器运行状况 | 显示 Airflow Web 服务器状态的时间轴。此状态是根据 Airflow Web 服务器返回的 HTTP 状态代码生成的。 |
数据库运行状况 | 显示与托管 Airflow 数据库的 Cloud SQL 实例的连接状态的时间轴。 |
环境操作 | 显示用于修改环境的操作(例如执行配置更新或加载环境快照)的时间轴。 |
维护操作 | 显示在环境的集群上执行维护操作的时间段的时间轴。 |
环境依赖项 | 一个时间轴,显示环境操作的可单手操作性和权限检查状态。 |
DAG 统计信息
环境指标 | 说明 |
---|---|
成功的 DAG 运行 | 所选时间范围内环境中所有 DAG 的成功运行总次数。如果成功运行的 DAG 数量低于预期水平,则可能表示失败(请参阅失败的 DAG 运行)或出现时间安排问题。 |
失败的 DAG 运行 失败的任务 | 所选时间范围内环境中所有 DAG 的失败运行总次数。 所选时间范围内在环境中失败的任务总数。失败的任务并不一定会导致 DAG 运行失败,但它们可以作为有用的信号来排查 DAG 问题。 |
已完成的 DAG 运行 | 所选时间范围的间隔中 DAG 的成功次数和失败次数。这有助于识别 DAG 运行的暂时性问题,并将其与其他事件(例如工作器 pod 逐出)相关联。 |
已完成的任务 | 环境中完成的任务数量,以及成功和失败任务的明细。 |
DAG 运行时长中位数 | DAG 运行时长中间值,此图表有助于识别 DAG 时长方面的性能问题和趋势。 |
Airflow 任务 | 在指定时间处于正在运行、排队或推迟状态的任务数量。Airflow 任务是指在 Airflow 中处于队列状态的任务,它们可以进入 Celery 或 Kubernetes Executor 代理队列。“Celery 队列中的任务数”是指已进入 Celery 代理队列的任务实例数。 |
已终止的僵尸任务 | 较小时间窗口内完成的僵尸任务数量。僵尸任务通常由 Airflow 进程的外部终止导致。Airflow 调度程序会定期终止僵尸任务,这些任务应反映在此图表中。 |
DAG 总数 | 在给定时间已部署到您环境的存储分区并且已由 Airflow 处理的 DAG 数量。这在分析性能瓶颈时很有用。例如,DAG 部署数量增加可能会因负载过多而导致性能降低。 |
DAG 处理器错误 | 处理 DAG 文件时遇到的每秒错误数和超时次数。该值表示 DAG 处理器报告错误的频率(不同于失败的 DAG 数量)。 |
所有 DAG 的总解析时间 | 显示 Airflow 处理环境中所有 DAG 所需总时间的图表。解析时间增加会影响调度效率。如需了解详情,请参阅 DAG 解析时间与 DAG 执行时间之间的差异。 |
调度器统计信息
环境指标 | 说明 |
---|---|
调度器检测信号 | 请参阅环境概览。 |
调度器的 CPU 总使用率 | 所有 Airflow 调度器 pod 中运行的容器所用的 vCPU 内核总数,以及所有调度器的总 vCPU 限制。 |
调度器内存总用量 | 所有 Airflow 调度器 pod 中运行的容器的内存总用量,以及所有调度器的总 vCPU 限制。 |
调度器的总磁盘使用量 | 在所有 Airflow 调度器 pod 中运行的容器的磁盘空间总用量,以及所有调度器的磁盘空间总限制。 |
调度器容器重启 | 各个调度器容器的重启总次数。 |
调度器 Pod 逐出 | Airflow 调度器 Pod 逐出次数。当环境集群中的特定 Pod 达到其资源限制时,可能会发生 pod 逐出。 |
工作器统计信息
环境指标 | 说明 |
---|---|
工作器 CPU 总使用率 | 所有 Airflow 工作器 pod 中运行的容器所用的 vCPU 内核总数,以及所有工作器的总 vCPU 限制。 |
工作器内存总用量 | 所有 Airflow 工作器 pod 中运行的容器的内存总用量,以及所有工作器的总 vCPU 限制。 |
工作器磁盘总用量 | 所有 Airflow 工作器 pod 中运行的容器的磁盘空间总用量,以及所有工作器的总磁盘空间限制。 |
活跃工作器数 | 您环境中的当前工作器数量。在 Cloud Composer 2 中,您的环境会自动扩缩活跃工作器的数量。 |
工作器容器重启 | 各个工作器容器的重启总次数。 |
工作器 pod 逐出 | Airflow 工作器 Pod 逐出次数。当环境集群中的特定 pod 达到其资源限制时,可能会发生 pod 逐出。如果 Airflow 工作器 pod 被逐出,则该 pod 上运行的所有任务实例都会中断,之后被 Airflow 标记为失败。 |
Airflow 任务 | 请参阅环境概览。 |
Celery 代理发布超时 |
向 Celery 代理发布任务时出现的 AirflowTaskTimeout 错误总数。此指标对应于 celery.task_timeout_error Airflow 指标。 |
Celery 执行命令失败 |
Celery 任务中的非零退出代码总数。此指标对应于 celery.execute_command.failure Airflow 指标。 |
系统终止的任务 | 任务运行程序因 SIGKILL 而终止的工作流任务数(例如由于工作器内存或检测信号问题)。 |
触发器统计信息
环境指标 | 说明 |
---|---|
推迟的任务 | 在指定时间处于推迟状态的任务数量。如需详细了解延迟任务,请参阅使用可延期运算符 |
已完成的触发器 | 所有触发器 pod 中已完成的触发器数量。 |
正在运行的触发器 | 每个触发器实例运行的触发器数量。此图表会为每个触发器显示单独的一行。 |
屏蔽型触发器 | 阻塞了主线程的触发器数量(可能是因为未完全异步)。 |
触发器的 CPU 用量总计 | 所有 Airflow 触发器 pod 中运行的容器所用的 vCPU 内核总数,以及所有触发器的总 vCPU 限制。 |
触发器的内存用量总计 | 所有 Airflow 触发器 pod 中运行的容器的内存总用量,以及所有触发器的总 vCPU 限制。 |
触发器的磁盘使用量总计 | 所有 Airflow 触发器 pod 中运行的容器的磁盘空间总用量,以及所有触发器的磁盘空间总限制。 |
活跃触发器 | 活跃触发器实例的数量。 |
触发器容器重启 | 触发器容器重启次数。 |
Web 服务器统计信息
环境指标 | 说明 |
---|---|
Web 服务器运行状况 | 请参阅环境概览。 |
网络服务器 CPU 使用率 | 在所有 Airflow Web 服务器 pod 中运行的容器所用的 vCPU 核心总数,以及所有 Web 服务器的总 vCPU 限制。 |
Web 服务器内存用量 | 在所有 Airflow Web 服务器 pod 中运行的容器的内存总用量,以及所有 Web 服务器的总 vCPU 限制。 |
Web 服务器磁盘总用量 | 在所有 Airflow Web 服务器 pod 中运行的容器所使用的磁盘空间总用量,以及所有 Web 服务器的总磁盘空间限制。 |
SQL 数据库统计信息
环境指标 | 说明 |
---|---|
数据库运行状况 | 请参阅环境概览。 |
数据库 CPU 使用率 | 您环境中的 Cloud SQL 数据库实例使用的 CPU 核心数。 |
数据库内存用量 | 您环境中的 Cloud SQL 数据库实例使用的内存总量。 |
数据库磁盘使用量 | 您环境中的 Cloud SQL 数据库实例使用的磁盘空间总量。此指标适用于 Cloud SQL 数据库实例本身,因此当 Airflow 数据库大小减小时,此指标不会减少。如需查看显示 Airflow 数据库内容大小的指标,请参阅 Airflow 元数据数据库大小。 |
Airflow 元数据数据库大小 | Airflow 元数据数据库的大小。此指标适用于环境的 Airflow 组件,用于显示 Cloud SQL 数据库实例上的 Airflow 元数据数据库占用的磁盘空间量。当 Airflow 元数据数据库大小减小(例如在执行 Airflow 数据库维护后)时,此指标会减小,并用于确定是否可以创建快照和升级环境。此指标不同于“数据库磁盘用量”指标,后者显示 Cloud SQL 数据库实例使用的磁盘空间量。 |
数据库连接 | 与数据库建立的活跃连接总数和连接总数上限。 |
DAG 解析时间与 DAG 执行时间之间的差异
环境的监控信息中心会显示解析 Cloud Composer 环境中所有 DAG 所需的总时间,以及执行 DAG 的平均时间。
解析 DAG 和调度来自 DAG 的任务以执行是 Airflow 调度器执行的两个独立操作。
![Airflow 调度器执行的 DAG 解析和任务调度](https://cloud.google.com/static/composer/docs/images/dag-parsing-task-execution.png?authuser=1&hl=zh-cn)
DAG 解析时间是 Airflow 调度器读取和解析 DAG 文件所需的时间。
在 Airflow 调度器可以调度 DAG 中的任何任务之前,调度器必须解析 DAG 文件,以发现 DAG 和定义的任务的结构。解析 DAG 文件后,调度器可以开始调度 DAG 中的任务。
DAG 执行时间是 DAG 的所有任务执行时间之和。
如需查看从 DAG 执行特定 Airflow 任务所需的时间,请在 Airflow 网页界面中选择一个 DAG,然后打开任务时长标签页。此标签页会显示最近指定次数的 DAG 运行的任务执行时间。