使用 Monitoring 信息中心

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

本页面介绍了如何访问和使用监控信息中心 Cloud Composer 环境。

访问监控信息中心

该监控信息中心包含指标和图表,用于监控环境中运行的 DAG 的趋势,以及识别 Airflow 组件和 Cloud Composer 资源的问题。

如需访问环境的监控信息中心,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往环境页面。

    转到“环境”

  2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

  3. 转到监控标签页。

为指标设置提醒

点击监控卡片角落的铃铛图标,即可为指标设置提醒。

为监控信息中心上显示的指标创建提醒
图 1. 为监控信息中心中显示的指标创建提醒(点击可放大)

在 Monitoring 中查看指标

您可以在 Monitoring 中查看指标的详细情况。

如需从 Cloud Composer 监控信息中心导航到该信息中心,请点击 指标卡片右上角的三个点,然后选择 在 Metrics Explorer 中查看

在 Metrics Explorer 的监控信息中心内查看指标
图 2. 在 Metrics Explorer 的监控信息中心内查看指标(点击可放大)

指标说明

每个 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 Broker 时引发的 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 服务器运行状况 请参阅环境概览
Web 服务器 CPU 使用率 在所有 Airflow Web 服务器 pod 中运行的容器所用的 vCPU 核心总数,以及所有 Web 服务器的总 vCPU 限制。
Web 服务器内存用量 在所有 Airflow Web 服务器 pod 中运行的容器的内存总用量,以及所有 Web 服务器的总 vCPU 限制。
Web 服务器磁盘总用量 所有 Airflow Web 服务器中运行的容器所用的磁盘空间总用量 Pod ,以及所有网络服务器的总磁盘空间限制。

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 解析和任务调度
图 3. Airflow 调度器执行的 DAG 解析和任务调度(点击可放大)

DAG 解析时间是 Airflow 调度器读取和解析 DAG 文件所需的时间。

Airflow 调度器在调度 DAG 中的任何任务之前 必须解析该 DAG 文件,以了解该 DAG 的结构 任务。解析 DAG 文件后,调度器可以开始进行调度 从 DAG 中提取任务。

DAG 执行时间是 DAG 的所有任务执行时间之和。

如需查看从 DAG 执行特定 Airflow 任务所需的时间,请在 Airflow 网页界面中选择一个 DAG,然后打开任务时长标签页。此标签页显示任务执行时间 。