기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
아파치 에어플로우 v2 환경 메트릭은 다음과 같습니다. CloudWatch
Apache Airflow v2는 이미 Apache Airflow용 Amazon 관리형 워크플로우 환경에 대한 StatSD
목차
용어
- 네임스페이스
-
네임스페이스는 서비스의 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 지표에 액세스하는 방법을 설명합니다.
차원에 대한 성능 지표를 보려면
-
CloudWatch 콘솔에서 지표 페이지를
엽니다. -
AWS 지역 선택기를 사용하여 지역을 선택합니다.
-
Amazon MWAA 네임스페이스를 선택합니다.
-
모든 지표 탭에서 차원을 선택합니다. 예: DAG, 환경
-
측정기준에 사용할 CloudWatch 측정항목을 선택합니다. TaskInstance성공 또는 TaskInstance지속 시간을 예로 들 수 있습니다. 모든 검색 결과를 그래프로 표시를 선택합니다.
-
그래프 지표 탭을 선택하면 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_ 참고Apache Airflow v2.7.2 이상에서 사용 가능. |
개수 |
연산자, |
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, |
PoolDeferred슬롯 참고Apache Airflow v2.7.2 이상에서 사용 가능. |
pool.deferred_slots. |
개수 |
풀, {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. 참고Apache Airflow v2.7.2 이상에서 사용 가능. |
밀리초 |
DAG, {dag_id} 작업, {task_id} |
TaskInstanceScheduledDuration 참고Apache Airflow v2.7.2 이상에서 사용 가능. |
dag. |
밀리초 |
DAG, {dag_id} 작업, {task_id} |
보고할 지표 선택
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