아파치 에어플로우 v2 환경 메트릭은 다음과 같습니다. CloudWatch - Amazon Managed Workflows for Apache Airflow

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

아파치 에어플로우 v2 환경 메트릭은 다음과 같습니다. CloudWatch

Apache Airflow v2는 이미 Apache Airflow용 Amazon 관리형 워크플로우 환경에 대한 StatSD 지표를 수집하여 Amazon으로 전송하도록 설정되어 있습니다. CloudWatch Apache Airflow가 전송하는 지표의 전체 목록은 Apache Airflow 참조 가이드지표 페이지에서 확인할 수 있습니다. 이 페이지에서는 에서 사용할 수 있는 Apache Airflow 지표와 콘솔에서 CloudWatch 지표에 액세스하는 방법을 설명합니다. CloudWatch

용어

네임스페이스

네임스페이스는 서비스의 CloudWatch 메트릭을 담는 컨테이너입니다. AWS 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 액세스

이 섹션에서는 특정 DAG의 성능 CloudWatch 지표에 액세스하는 방법을 설명합니다.

차원에 대한 성능 지표를 보려면
  1. CloudWatch 콘솔에서 지표 페이지를 엽니다.

  2. AWS 지역 선택기를 사용하여 지역을 선택합니다.

  3. Amazon MWAA 네임스페이스를 선택합니다.

  4. 모든 지표 탭에서 차원을 선택합니다. 예: DAG, 환경

  5. 측정기준에 사용할 CloudWatch 측정항목을 선택합니다. TaskInstance성공 또는 TaskInstance지속 시간을 예로 들 수 있습니다. 모든 검색 결과를 그래프로 표시를 선택합니다.

  6. 그래프 지표 탭을 선택하면 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

FilePathQueueUpdate개수

참고

Apache Airflow v2.6.3 이상에서 사용 가능.

dag_processing.file_path_queue_update_count

개수

함수, 스케줄러

CriticalSection바빠

scheduler.critical_section_busy

개수

함수, 스케줄러

DagBag사이즈

dagbag_size

개수

함수, DAG 프로세싱

DagCallback예외

dag.callback_exceptions

개수

DAG, 모두

실패한 SLA EmailAttempts

sla_email_notification_failure

개수

함수, 스케줄러

TaskInstance완료되었습니다.

ti.finish.{dag_id}.{task_id}.{state}

개수

DAG, {dag_id}

작업, {task_id}

상태, {state}

JobEnd

{job_name}_end

개수

작업, {job_name}

JobHeartbeat실패

{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}

OtherCallback카운트

참고

Apache Airflow v2.6.3 이상에서 사용 가능.

dag_processing.other_callback_count

개수

함수, 스케줄러

프로세스

dag_processing.processes

개수

함수, DAG 프로세싱

SchedulerHeartbeat

scheduler_heartbeat

개수

함수, 스케줄러

StartedTask인스턴스

ti.start.{dag_id}.{task_id}

개수

DAG, 모두

작업, 모두

SlaCallback개수

dag_processing.sla_callback_count

참고

Apache Airflow v2.6.3 이상에서 사용 가능.

개수

함수, 스케줄러

TasksKilled외부적으로

scheduler.tasks.killed_externally

개수

함수, 스케줄러

TaskTimeout오류

celery.task_timeout_error

개수

함수, Celery

TaskInstanceCreatedUsing운영자

task_instance_created-{operator_name}

개수

연산자, {operator_name}

TaskInstancePreviouslySucceeded

previously_succeeded

개수

DAG, 모두

작업, 모두

TaskInstance실패

ti_failures

개수

DAG, 모두

작업, 모두

TaskInstance성공

ti_successes

개수

DAG, 모두

작업, 모두

TaskRemoved프롬 데이

task_removed_from_dag.{dag_id}

개수

DAG, {dag_id}

TaskRestored오늘

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

참고

아파치 에어플로우 v2.8.1 이상에서 사용 가능합니다.

트리거_하트비트

개수

함수, 트리거

TaskInstanceCreatedUsing오퍼레이터

airflow.task_instance_created_{operator_name}

참고

Apache Airflow v2.7.2 이상에서 사용 가능.

개수

연산자, {operator_name}

ZombiesKilled

zombies_killed

개수

DAG, 모두

작업, 모두

Apache Airflow 게이지

이 섹션의 Apache Airflow 지표에는 Apache Airflow 게이지에 대한 데이터가 포함되어 있습니다.

CloudWatch 메트릭 Apache Airflow 지표 단위 측정기준

DAG 오류 FileRefresh

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

개수

함수, 스마트 센서 연산자

TotalParse시간

dag_processing.total_parse_time

함수, DAG 프로세싱

TriggeredDag실행

참고

Apache Airflow v2.6.3 이상에서 사용 가능.

dataset.triggered_dagruns

개수

함수, 스케줄러

TriggersRunning

참고

Apache Airflow v2.7.2 이상에서 사용 가능.

triggers.running.{hostname}

개수

함수, 트리거

HostName, {호스트 이름}

PoolDeferred슬롯

참고

Apache Airflow v2.7.2 이상에서 사용 가능.

pool.deferred_slots. {pool_name}

개수

풀, {pool_name}

DAG FileProcessing LastRun SecondsAgo

dag_processing.last_run.seconds_ago.{dag_filename}

DAG 파일 이름, {dag_filename}

OpenSlots

executor.open_slots

개수

함수, 실행기

OrphanedTasks입양

scheduler.orphaned_tasks.adopted

개수

함수, 스케줄러

OrphanedTasks클리어

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}

PoolStarving태스크

pool.starving_tasks.{pool_name}

개수

풀, {pool_name}

PoolOpen슬롯

pool.open_slots.{pool_name}

개수

풀, {pool_name}

PoolQueued슬롯

pool.queued_slots.{pool_name}

개수

풀, {pool_name}

PoolRunning슬롯

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

개수

함수, 스케줄러

Apache Airflow 타이머

이 섹션의 Apache Airflow 지표에는 Apache Airflow 타이머에 대한 데이터가 포함되어 있습니다.

CloudWatch 메트릭 Apache Airflow 지표 단위 측정기준

CollectDBDags

collect_db_dags

밀리초

함수, DAG 프로세싱

CriticalSection소요 시간

scheduler.critical_section_duration

밀리초

함수, 스케줄러

CriticalSectionQueryDuration

참고

Apache Airflow v2.5.1 이상에서 사용 가능.

scheduler.critical_section_query_duration

밀리초

함수, 스케줄러

DAG DependencyCheck

dagrun.dependency-check.{dag_id}

밀리초

DAG, {dag_id}

DAG DurationFailed

dagrun.duration.failed.{dag_id}

밀리초

DAG, {dag_id}

DAG DurationSuccess

dagrun.duration.success.{dag_id}

밀리초

DAG, {dag_id}

DAG FileProcessing LastDuration

dag_processing.last_duration.{dag_filename}

DAG 파일 이름, {dag_filename}

DAG ScheduleDelay

dagrun.schedule_delay.{dag_id}

밀리초

DAG, {dag_id}

FirstTaskSchedulingDelay

dagrun.{dag_id}.first_task_scheduling_delay

밀리초

DAG, {dag_id}

SchedulerLoop소요 시간

참고

Apache Airflow v2.5.1 이상에서 사용 가능.

scheduler.scheduler_loop_duration

밀리초

함수, 스케줄러

TaskInstance소요 시간

dag.{dag_id}.{task_id}.duration

밀리초

DAG, {dag_id}

작업, {task_id}

TaskInstanceQueuedDuration

dag.{dag_id}.{task_id}.queued_duration

참고

Apache Airflow v2.7.2 이상에서 사용 가능.

밀리초

DAG, {dag_id}

작업, {task_id}

TaskInstanceScheduledDuration

참고

Apache Airflow v2.7.2 이상에서 사용 가능.

dag.{dag_id}.{task_id}.scheduled_duration

밀리초

DAG, {dag_id}

작업, {task_id}

보고할 지표 선택

다음 Amazon MWAA 구성 옵션을 사용하여 Apache Airflow로 CloudWatch 내보내거나 Apache Airflow에서 차단할 Apache Airflow 지표를 선택할 수 있습니다.

  • metrics.metrics_allow_list— 환경에서 내보낼 지표를 선택하는 데 사용할 수 있는 쉼표로 구분된 접두사 목록입니다. CloudWatch Apache Airflow가 가용한 모든 지표를 전송하지 않고 대신 요소의 하위 집합을 선택하도록 하려면 이 옵션을 사용합니다. 예를 들어 scheduler,executor,dagrun입니다.

  • metrics.metrics_block_list— 목록의 요소로 시작하는 지표를 필터링하기 위한, 쉼표로 구분된 접두사 목록입니다. 예를 들어 scheduler,executor,dagrun입니다.

metrics.metrics_allow_listmetrics.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_listmetrics.metrics_block_list 구성 옵션은 Apache Airflow v2.6.3 이상에만 적용됩니다. 이전 버전의 Apache Airflow의 경우 를 대신 사용하십시오. metrics.statsd_allow_list metrics.statsd_block_list

다음 단계

  • 에서 환경 상태 지표를 게시하는 데 사용되는 Amazon MWAA API 작업을 살펴보십시오. PublishMetrics