기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
의 Apache Airflow v2 환경 지표 CloudWatch
Apache Airflow v2는 이미 Amazon Managed Workflows for Apache Airflow 환경에 대한 StatsD
목차
용어
- 네임스페이스
-
네임스페이스는 AWS 서비스의 CloudWatch 지표를 위한 컨테이너입니다. Amazon MWAA의 경우 네임스페이스는 AmazonMWAA입니다.
- CloudWatch 지표
-
CloudWatch 지표는 특정 데이터 포인트의 시간 순서 집합을 나타냅니다 CloudWatch.
- Apache Airflow 지표
-
Apache Airflow 전용 지표
- 차원
-
차원은 지표의 보안 인증에 속하는 명칭/값 쌍입니다.
- 단위
-
통계에는 측정 단위가 포함되어 있습니다. Amazon MWAA의 경우 단위에는 개수, 초 및 밀리초가 포함됩니다. Amazon의 경우 MWAA단위는 원래 Airflow 지표의 단위를 기반으로 설정됩니다.
차원
이 섹션에서는의 Apache Airflow 지표 CloudWatch 에 대한 차원 그룹에 대해 설명합니다 CloudWatch.
차원 | 설명 |
---|---|
DAG |
특정 Apache Airflow DAG 이름을 나타냅니다. |
DAG 파일 이름 |
특정 Apache Airflow DAG 파일 이름을 나타냅니다. |
함수 |
이 차원은의 지표 그룹화를 개선하는 데 사용됩니다 CloudWatch. |
작업 |
스케줄러가 실행하는 Apache Airflow 작업을 나타냅니다. 항상 작업의 값을 갖습니다. |
연산자 |
특정 Apache Airflow 연산자를 나타냅니다. |
풀 |
특정 Apache Airflow 작업자 풀을 나타냅니다. |
작업 |
특정 Apache Airflow 작업을 나타냅니다. |
HostName |
실행 중인 특정 Apache Airflow 프로세스의 호스트 이름을 나타냅니다. |
CloudWatch 콘솔에서 지표에 액세스
이 섹션에서는 특정에 CloudWatch 대해에서 성능 지표에 액세스하는 방법을 설명합니다DAG.
차원에 대한 성능 지표를 보려면
-
CloudWatch 콘솔에서 지표 페이지를
엽니다. -
AWS 리전 선택기를 사용하여 리전을 선택합니다.
-
AmazonMWAA 네임스페이스를 선택합니다.
-
모든 지표 탭에서 차원을 선택합니다. 예: DAG, 환경.
-
차원 CloudWatch 에 대한 지표를 선택합니다. 예: TaskInstanceSuccesses또는 TaskInstanceDuration. 모든 검색 결과를 그래프로 표시를 선택합니다.
-
그래프 지표 탭을 선택하여 , DAG환경, 작업과 같은 Apache Airflow 지표의 성능 통계를 봅니다.
에서 사용 가능한 Apache Airflow 지표 CloudWatch
이 섹션에서는 로 전송되는 Apache Airflow 지표 및 차원에 대해 설명합니다 CloudWatch.
Apache Airflow 카운터
이 섹션의 Apache Airflow 지표에는 Apache Airflow 카운터
CloudWatch 지표 | Apache Airflow 지표 | 단위 | 차원 |
---|---|---|---|
SLAMissed 참고Apache Airflow v2.4.3 이상에서 사용 가능. |
sla_missed |
개수 |
함수, 스케줄러 |
FailedSLACallback 참고Apache Airflow v2.4.3 이상에서 사용 가능. |
sla_callback_notification_failure |
개수 |
함수, 스케줄러 |
업데이트 참고Apache Airflow v2.6.3 이상에서 사용 가능. |
dataset.updates |
개수 |
함수, 스케줄러 |
Orphaned 참고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.processes |
개수 |
함수, 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 이상에서 사용 가능 |
triggerer_heartbeat |
개수 |
함수, 트리거 |
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.infra_failures |
개수 |
함수, 스마트 센서 연산자 |
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 이상에서 사용 가능. |
triggers.running. |
개수 |
함수, 트리거 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 지표 | 단위 | 차원 |
---|---|---|---|
CollectDBDags |
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} |
보고할 지표 선택
다음 Amazon MWAA 구성 옵션을 사용하여 Apache Airflow 지표를 Apache Airflow로 내보내 CloudWatch거나 Apache Airflow에서 차단할지 선택할 수 있습니다.
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에서는 대신 metrics.statsd_allow_list
및 metrics.statsd_block_list
를 사용합니다.
다음 단계
-
에서 환경 상태 지표를 게시하는 데 사용되는 Amazon MWAA API 작업을 살펴봅니다PublishMetrics.