本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Apache Airflow v2 中的环境指标 CloudWatch
Apache Airflow v2 已经设置为收集适用于 Apache Airflow 的亚马逊托管工作流程的 StatSD 指标
目录
术语
- 命名空间
-
命名空间是 Amazon 服务 CloudWatch 指标的容器。对于亚马逊MWAA,命名空间是亚马逊MWAA。
- CloudWatch 指标
-
CloudWatch 指标表示特定于的一组按时间顺序排列的数据点。 CloudWatch
- Apache Airflow 指标
-
特定于 Apache Airflow 的指标
。 - 维度
-
维度是名称/值对,是指标身份的一部分。
- 单位
-
所有统计数据都有度量单位。对于 AmazonMWAA,单位包括计数、秒和毫秒。对于亚马逊MWAA,单位是根据原始气流指标中的单位设置的。
尺寸
本节介绍中 Apache 气流指标的 CloudWatch 维度分组。 CloudWatch
维度 | 描述 |
---|---|
DAG |
表示特定的 Apache Airflow 名称DAG。 |
DAG文件名 |
表示特定的 Apache Air DAG flow 文件名。 |
函数 |
此维度用于改进中的指标分组 CloudWatch。 |
作业 |
表示计划程序正在运行的 Apache Airflow 任务。始终具有任务的值。 |
运算符 |
表示特定的 Apache Airflow 运算符。 |
池 |
表示特定的 Apache Airflow 工作线程池。 |
任务 |
表示特定的 Apache Airflow 任务。 |
HostName |
表示正在运行的特定的 Apache Airflow 进程的主机名。 |
在 CloudWatch 控制台中访问指标
本节介绍如何访问特定项 CloudWatch 的性能指标DAG。
要查看维度的性能指标,请执行以下操作
-
在 CloudWatch 控制台上打开 “指标” 页面
。 -
使用 Amazon 区域选择器选择您的区域。
-
选择 Amazon MWAA 命名空间。
-
在所有指标选项卡中,选择一个维度。例如 DAG,环境。
-
为维 CloudWatch 度选择一个指标。例如,TaskInstanceSuccesses或TaskInstanceDuration。选择绘制所有搜索结果的图表。
-
选择 “图形化指标” 选项卡可查看 Apache Airflow 指标的性能统计信息,例如环境DAG、任务。
Apache 气流指标可用于 CloudWatch
本节介绍发送到的 Apache 气流指标和维度。 CloudWatch
Apache Airflow 计数器
本节中的 Apache Airflow 指标包含有关 Apache Airflow 计数器
CloudWatch 公制 | Apache Airflow 指标 | 单位 | 维度 |
---|---|---|---|
SLAMissed 注意适用于 Apache Airflow v2.4.3 及更高版本。 |
sla_missed |
计数 |
函数,计划程序 |
F ailedSLACallback 注意适用于 Apache Airflow v2.4.3 及更高版本。 |
sla_callback_notification_failure |
计数 |
函数,计划程序 |
更新 注意适用于 Apache Airflow v2.6.3 及更高版本。 |
dataset.updates |
计数 |
函数,计划程序 |
孤立 注意适用于 Apache Airflow v2.6.3 及更高版本。 |
dataset.orphaned |
计数 |
函数,计划程序 |
FailedCeleryTaskExecution 注意适用于 Apache Airflow v2.4.3 及更高版本。 |
celery.execute_command.failure |
计数 |
函数,Celery |
FilePathQueueUpdateCount 注意适用于 Apache Airflow v2.6.3 及更高版本。 |
dag_processing.file_path_queue_update_count |
计数 |
函数,计划程序 |
CriticalSectionBusy |
scheduler.critical_section_busy |
计数 |
函数,计划程序 |
DagBagSize |
dagbag_size |
计数 |
函数、DAG处理 |
DagCallbackExceptions |
dag.callback_exceptions |
计数 |
DAG,全部 |
F ailedSLAEmail 尝试次数 |
sla_email_notification_failure |
计数 |
函数,计划程序 |
TaskInstanceFinished |
ti.finish.{dag_id}.{task_id}.{state} |
计数 |
DAG,{dag_id} 任务,{task_id} 状态,{state} |
JobEnd |
{job_name} _end |
计数 |
任务,{job_name} |
JobHeartbeatFailure |
{job_name}_heartbeat_failure |
计数 |
任务,{job_name} |
JobStart |
{job_name}_start |
计数 |
任务,{job_name} |
ManagerStalls |
dag_processing.manager_stalls |
计数 |
函数、DAG处理 |
OperatorFailures |
operator_failures_{operator_name} |
计数 |
运算符,{operator_name} |
OperatorSuccesses |
operator_successes_{operator_name} |
计数 |
运算符,{operator_name} |
OtherCallbackCount 注意在 Apache Airflow v2.6.3 及更高版本中可用。 |
dag_processing.other_callback_count |
计数 |
函数,计划程序 |
进程 |
dag_processing 进程 |
计数 |
函数、DAG处理 |
SchedulerHeartbeat |
scheduler_heartbeat |
计数 |
函数,计划程序 |
StartedTaskInstances |
ti.start.{dag_id}.{task_id} |
计数 |
DAG,全部 任务,全部 |
SlaCallbackCount |
dag_processing.sla_callback_count 注意适用于 Apache Airflow v2.6.3 及更高版本。 |
计数 |
函数,计划程序 |
TasksKilledExternally |
scheduler.tasks.killed_externally |
计数 |
函数,计划程序 |
TaskTimeoutError |
celery.task_timeout_error |
计数 |
函数,Celery |
TaskInstanceCreatedUsingOperator |
task_instance_created-{operator_name} |
计数 |
运算符,{operator_name} |
TaskInstancePreviouslySucceeded |
previously_succeeded |
计数 |
DAG,全部 任务,全部 |
TaskInstanceFailures |
ti_failures |
计数 |
DAG,全部 任务,全部 |
TaskInstanceSuccesses |
ti_successes |
计数 |
DAG,全部 任务,全部 |
TaskRemovedFromDAG |
task_removed_from_dag.{dag_id} |
计数 |
DAG,{dag_id} |
TaskRestoredToDAG |
task_restored_to_dag.{dag_id} |
计数 |
DAG,{dag_id} |
TriggersSucceeded 注意适用于 Apache Airflow v2.7.2 及更高版本。 |
triggers.succeeded |
计数 |
函数,触发 |
TriggersFailed 注意适用于 Apache Airflow v2.7.2 及更高版本。 |
triggers.failed |
计数 |
函数,触发 |
TriggersBlockedMainThread 注意适用于 Apache Airflow v2.7.2 及更高版本。 |
triggers.blocked_main_thread |
计数 |
函数,触发 |
TriggerHeartbeat 注意适用于 Apache Airflow v2.8.1 及更高版本。 |
触发器_心跳 |
计数 |
函数,触发器 |
TaskInstanceCreatedUsingOperator |
airflow.task_instance_created_ 注意适用于 Apache Airflow v2.7.2 及更高版本。 |
计数 |
运算符, |
ZombiesKilled |
zombies_killed |
计数 |
DAG,全部 任务,全部 |
Apache Airflow 计
本节中的 Apache Airflow 指标包含有关 Apache Airflow 计
CloudWatch 公制 | Apache Airflow 指标 | 单位 | 维度 |
---|---|---|---|
DAGFileRefreshError |
dag_file_refresh_error |
计数 |
函数、DAG处理 |
ImportErrors |
dag_processing.import_errors |
计数 |
函数、DAG处理 |
ExceptionFailures |
smart_sensor_operator.exception_failures |
计数 |
函数,智能传感器运算符 |
ExecutedTasks |
smart_sensor_operator.executed_tasks |
计数 |
函数,智能传感器运算符 |
InfraFailures |
smart_sensor_operator.infailes |
计数 |
函数,智能传感器运算符 |
LoadedTasks |
smart_sensor_operator.loaded_tasks |
计数 |
函数,智能传感器运算符 |
TotalParseTime |
dag_processing.total_parse_time |
秒 |
函数、DAG处理 |
TriggeredDagRuns 注意在 Apache Airflow v2.6.3 及更高版本中可用。 |
dataset.triggered_dagruns |
计数 |
函数,计划程序 |
TriggersRunning 注意在 Apache Airflow v2.7.2 及更高版本中可用。 |
触发器。运行。 |
计数 |
函数,触发 HostName, |
PoolDeferredSlots 注意在 Apache Airflow v2.7.2 及更高版本中可用。 |
pool.deferred_slots. |
计数 |
池,{pool_name} |
DAGFileProcessingLastRunSecondsAgo |
dag_processing.last_run.seconds_ago.{dag_filename} |
秒 |
DAG文件名,{dag_filename} |
OpenSlots |
executor.open_slots |
计数 |
函数,执行程序 |
OrphanedTasksAdopted |
scheduler.orphaned_tasks.adopted |
计数 |
函数,计划程序 |
OrphanedTasksCleared |
scheduler.orphaned_tasks.cleared |
计数 |
函数,计划程序 |
PokedExceptions |
smart_sensor_operator.poked_exception |
计数 |
函数,智能传感器运算符 |
PokedSuccess |
smart_sensor_operator.poked_success |
计数 |
函数,智能传感器运算符 |
PokedTasks |
smart_sensor_operator.poked_tasks |
计数 |
函数,智能传感器运算符 |
PoolFailures |
pool.open_slots.{pool_name} |
计数 |
池,{pool_name} |
PoolStarvingTasks |
pool.starving_tasks.{pool_name} |
计数 |
池,{pool_name} |
PoolOpenSlots |
pool.open_slots.{pool_name} |
计数 |
池,{pool_name} |
PoolQueuedSlots |
pool.queued_slots.{pool_name} |
计数 |
池,{pool_name} |
PoolRunningSlots |
pool.running_slots.{pool_name} |
计数 |
池,{pool_name} |
ProcessorTimeouts |
dag_processing.processor_timeouts |
计数 |
函数、DAG处理 |
QueuedTasks |
executor.queued_tasks |
计数 |
函数,执行程序 |
RunningTasks |
executor.running_tasks |
计数 |
函数,执行程序 |
TasksExecutable |
scheduler.tasks.executable |
计数 |
函数,计划程序 |
TasksPending 注意不适用于 Apache Airflow v2.2 及更高版本。 |
scheduler.tasks.pending |
计数 |
函数,计划程序 |
TasksRunning |
scheduler.tasks.running |
计数 |
函数,计划程序 |
TasksStarving |
scheduler.tasks.starving |
计数 |
函数,计划程序 |
TasksWithoutDagRun |
scheduler.tasks.without_dagrun |
计数 |
函数,计划程序 |
DAGFileProcessingLastNumOfDbQueries 注意在 Apache Airflow v2.10.1 及更高版本中可用。 |
dag_processing.last_num_of_db_queries。 {dag_filename} | 计数 |
DAG文件名,{dag_filename} |
PoolScheduledSlots注意在 Apache Airflow v2.10.1 及更高版本中可用。 |
pool.scheduled_slots。 {pool_name} | 计数 |
池,{pool_name} |
TaskCpuUsage注意在 Apache Airflow v2.10.1 及更高版本中可用。 |
cpu.usage。 {dag_id}。 {task_id} | 百分比 |
DAG,{dag_id} 任务,{task_id} |
TaskMemoryUsage注意在 Apache Airflow v2.10.1 及更高版本中可用。 |
mem.usage。 {dag_id}。 {task_id} | 百分比 |
DAG,{dag_id} 任务,{task_id} |
Apache Airflow 计时器
本节中的 Apache Airflow 指标包含有关 Apache Airflow 计时器
CloudWatch 公制 | Apache Airflow 指标 | 单位 | 维度 |
---|---|---|---|
C ollectDBDags |
collect_db_dags |
毫秒 |
函数、DAG处理 |
CriticalSectionDuration |
scheduler.critical_section_duration |
毫秒 |
函数,计划程序 |
CriticalSectionQueryDuration 注意适用于 Apache Airflow v2.5.1 及更高版本。 |
scheduler.critical_section_query_duration |
毫秒 |
函数,计划程序 |
DAGDependencyCheck |
dagrun.dependency-check.{dag_id} |
毫秒 |
DAG,{dag_id} |
DAGDurationFailed |
dagrun.duration.failed.{dag_id} |
毫秒 |
DAG,{dag_id} |
DAGDurationSuccess |
dagrun.duration.success.{dag_id} |
毫秒 |
DAG,{dag_id} |
DAGFileProcessingLastDuration |
dag_processing.last_duration.{dag_filename} |
秒 |
DAG文件名,{dag_filename} |
DAGScheduleDelay |
dagrun.schedule_delay.{dag_id} |
毫秒 |
DAG,{dag_id} |
FirstTaskSchedulingDelay |
dagrun.{dag_id}.first_task_scheduling_delay |
毫秒 |
DAG,{dag_id} |
SchedulerLoopDuration 注意适用于 Apache Airflow v2.5.1 及更高版本。 |
scheduler.scheduler_loop_duration |
毫秒 |
函数,计划程序 |
TaskInstanceDuration |
dag.{dag_id}.{task_id}.duration |
毫秒 |
DAG,{dag_id} 任务,{task_id} |
TaskInstanceQueuedDuration |
dag. 注意适用于 Apache Airflow v2.7.2 及更高版本。 |
毫秒 |
DAG,{dag_id} 任务,{task_id} |
TaskInstanceScheduledDuration 注意适用于 Apache Airflow v2.7.2 及更高版本。 |
dag. |
毫秒 |
DAG,{dag_id} 任务,{task_id} |
选择要报告的指标
您可以使用以 CloudWatch下 Amazon 配置选项来选择向哪些 Apache Airflow 发出或被 Apache Airflow 屏蔽的 Apache 气流指标:MWAA
metrics.metrics_allow_list
— 逗号分隔的前缀列表,可用于选择您的环境向哪些指标发送到 CloudWatch 哪些指标。如果您希望 Apache Airflow 不发送所有可用指标,而是选择元素的子集,请使用此选项。例如,scheduler,executor,dagrun
。metrics.metrics_block_list
— 以逗号分隔的前缀列表,用于筛选出以列表元素开头的指标。例如,scheduler,executor,dagrun
。
如果同时配置 metrics.metrics_allow_list
和 metrics.metrics_block_list
,Apache Airflow 将忽略 metrics.metrics_block_list
。如果您配置 metrics.metrics_block_list
但未配置 metrics.metrics_allow_list
,Apache Airflow 会过滤掉您在 metrics.metrics_block_list
中指定的元素。
注意
metrics.metrics_allow_list
和metrics.metrics_block_list
配置选项仅适用于 Apache Airflow v2.6.3 及更高版本。对于先前版本的 Apache Airflow,请改用 an metrics.statsd_allow_list
d。metrics.statsd_block_list
接下来做什么?
-
浏览用于发布环境MWAAAPI运行状况指标的 Amazon 操作,网址为PublishMetrics。