Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
이 페이지에서는 Cloud Composer 환경의 모니터링 대시보드에 액세스하고 사용하는 방법을 설명합니다.
특정 측정항목에 대한 자세한 내용은 Cloud Monitoring으로 환경 모니터링을 참조하세요.
모니터링 대시보드에 액세스
이 모니터링 대시보드에는 환경에서 DAG 실행의 추세를 모니터링하고 Airflow 구성요소 및 Cloud Composer 리소스의 문제를 식별하기 위한 측정항목과 차트가 포함되어 있습니다.
환경 모니터링 대시보드에 액세스하려면 다음 안내를 따르세요.
- Google Cloud 콘솔에서 환경 페이지로 이동합니다. 
- 환경 목록에서 환경 이름을 클릭합니다. 환경 세부정보 페이지가 열립니다. 
- Monitoring 탭으로 이동합니다. 
측정항목에 대한 알림 설정
모니터링 카드 모서리에 있는 종 모양 아이콘을 클릭하여 측정항목에 대해 알림을 설정할 수 있습니다.
 
  
  Monitoring에서 측정항목 보기
Monitoring에서 측정항목을 확인하면 더 자세히 살펴볼 수 있습니다.
Cloud Composer 모니터링 대시보드에서 이동하려면 측정항목 카드 오른쪽 위 모서리에 있는 3개 점을 클릭하고 측정항목 탐색기에서 보기를 선택합니다.
 
측정항목 설명
각 Cloud Composer 환경에는 자체 모니터링 대시보드가 있습니다. 특정 환경의 모니터링 대시보드에 표시되는 측정항목은 이 환경의 DAG 실행, Airflow 구성요소, 환경 세부정보만 추적합니다. 예를 들어 환경이 두 개인 경우 대시보드는 두 환경의 측정항목을 집계하지 않습니다.
환경 개요
| 환경 측정항목 | 설명 | 
|---|---|
| 환경 상태(Airflow 모니터링 DAG) | Composer 배포 상태를 보여주는 타임라인 녹색 상태는 Composer 배포 상태만 반영합니다. 그렇다고 해서 모든 Airflow 구성요소가 작동 중이며 DAG를 실행할 수 있는 것은 아닙니다. | 
| 스케줄러 하트비트 | Airflow 스케줄러의 하트비트를 보여주는 타임라인입니다. Airflow 스케줄러 문제를 식별하기 위해 빨간색 영역을 확인합니다. 환경에 둘 이상의 스케줄러가 있는 경우 하나 이상의 스케줄러가 응답하는 한 하트비트 상태는 정상입니다. | 
| 웹 서버 상태 | Airflow 웹 서버의 상태를 보여주는 타임라인 이 상태는 Airflow 웹 서버에서 반환된 HTTP 상태 코드를 기반으로 생성됩니다. | 
| 데이터베이스 상태 | Airflow DB를 호스팅하는 Cloud SQL 인스턴스 연결 상태를 보여주는 타임라인입니다. | 
| 환경 작업 | 구성 업데이트 수행 또는 환경 스냅샷 로드와 같이 환경을 수정하는 작업을 보여주는 타임라인입니다. | 
| 유지보수 작업 | 환경 클러스터에서 유지보수 작업이 수행되는 기간을 보여주는 타임라인입니다. | 
| 환경 종속 항목 | 환경 작업의 연결 가능성과 권한 검사 상태를 보여주는 타임라인입니다. | 
DAG 통계
| 환경 측정항목 | 설명 | 
|---|---|
| 성공한 DAG 실행 | 선택한 기간 동안 환경에서 성공한 총 DAG 실행 수입니다. 성공한 DAG 실행 수가 예상 수준 아래로 떨어지면 실패(DAG 실행 실패 참조) 또는 예약 문제를 표시할 수 있습니다. | 
| 실패한 DAG 실행 실패한 태스크 | 선택한 기간 동안 환경에서 실패한 총 DAG 실행 수입니다. 선택한 기간 동안 환경에서 실패한 총 작업 수입니다. 실패한 작업으로 인해 DAG 실행이 실패하는 것은 아니지만 DAG 오류를 해결하는데 유용한 신호가 될 수 있습니다. | 
| 완료된 DAG 실행 | 선택한 기간의 간격에 대한 DAG 성공 및 실패 횟수입니다. 이렇게 하면 DAG 실행의 일시적인 문제를 식별하고 작업자 포드 제거와 같은 다른 이벤트와의 상관 관계를 파악할 수 있습니다. | 
| 완료된 태스크 | 성공한 태스크와 실패한 태스크로 세분화된 환경에서 완료된 태스크 수입니다. | 
| DAG 실행 지속 시간 중앙값 | DAG 실행 지속 시간의 중앙값입니다. 이 차트는 DAG 기간의 성능 문제 및 트렌드를 식별하는 데 도움이 됩니다. | 
| Airflow 태스크 | 특정 시점에 실행 중이거나 큐에 추가되거나 지연된 상태인 태스크 수입니다. Airflow 태스크는 Airflow에서 큐에 추가된 상태인 태스크이며 Celery 또는 Kubernetes Executor 브로커 큐로 이동할 수 있습니다. Celery 큐에 추가된 태스크는 Celery 브로커 큐에 배치되는 태스크 인스턴스입니다. | 
| 좀비 태스크 종료됨 | 짧은 기간 동안 종료된 좀비 태스크의 수입니다. 좀비 작업은 종종 Airflow 프로세스의 외부 종료로 인해 발생합니다. Airflow 스케줄러는 좀비 태스크를 주기적으로 종료하며 이는 이 차트에 반영됩니다. | 
| DAG 모음 크기 | 특정 시간에 해당 환경의 버킷에 배포되고 Airflow에서 처리되는 DAG 수입니다. 이는 성능 병목 현상을 분석할 때 유용할 수 있습니다. 예를 들어 DAG 배포 수가 증가하면 과도한 로드로 인해 성능이 저하될 수 있습니다. | 
| DAG 프로세서 오류 | DAG 파일을 처리하는 동안 발생한 초당 오류 및 시간 초과입니다. 이 값은 DAG 프로세서가 보고한 오류의 빈도를 나타내며 실패한 DAG 수와는 다릅니다. | 
| 모든 DAGS의 총 파싱 시간 | Airflow가 환경의 모든 DAG를 처리하는 데 필요한 총 시간을 보여주는 차트입니다. 파싱 시간이 늘어나면 스케줄링 효율에 영향을 줄 수 있습니다. 자세한 내용은 DAG 파싱 시간과 DAG 실행 시간 사이의 차이점을 참조하세요. | 
스케줄러 통계
| 환경 측정항목 | 설명 | 
|---|---|
| 스케줄러 히트비트 | 환경 개요를 참조하세요. | 
| 총 스케줄러 CPU 사용량 | 모든 Airflow 스케줄러 포드에서 실행되는 컨테이너별 총 vCPU 코어 사용량 및 모든 스케줄러에 대해 결합된 vCPU 한도입니다. | 
| 총 스케줄러 메모리 사용량 | 모든 Airflow 스케줄러 포드에서 실행되는 컨테이너별 총 메모리 사용량 및 모든 스케줄러에 대해 결합된 vCPU 한도입니다. | 
| 총 스케줄러 디스크 사용량 | 모든 Airflow 스케줄러 포드에서 실행되는 컨테이너별 총 디스크 공간 사용량 및 모든 스케줄러에 대해 결합된 디스크 공간 한도입니다. | 
| 스케줄러 컨테이너 재시작 | 개별 스케줄러 컨테이너의 총 재시작 수입니다. | 
| 스케줄러 포드 제거 | Airflow 스케줄러 포드 제거 수입니다. 포드 제거는 환경 클러스터의 특정 포드가 리소스 한도에 도달하면 발생할 수 있습니다. | 
작업자 통계
| 환경 측정항목 | 설명 | 
|---|---|
| 총 작업자 CPU 사용량 | 모든 Airflow 작업자 포드에서 실행되는 컨테이너별 총 vCPU 코어 사용량 및 모든 작업자에 대해 결합된 vCPU 한도입니다. | 
| 총 작업자 메모리 사용량 | 모든 Airflow 작업자 포드에서 실행되는 컨테이너별 총 메모리 사용량 및 모든 작업자에 대해 결합된 vCPU 한도입니다. | 
| 총 작업자 디스크 사용량 | 모든 Airflow 작업자 포드에서 실행되는 컨테이너별 총 디스크 공간 및 모든 작업자에 대해 결합된 디스크 공간 한도입니다. | 
| 활성 작업자 | 환경의 현재 작업자 수입니다. Cloud Composer 2에서 환경은 활성 작업자 수를 자동으로 확장합니다. | 
| 작업자 컨테이너 재시작 수 | 개별 작업자 컨테이너의 총 재시작 수입니다. | 
| 작업자 pod 제거 | Airflow 작업자 포드 제거 수입니다. 포드 제거는 환경 클러스터의 특정 포드가 리소스 한도에 도달하면 발생할 수 있습니다. Airflow 작업자 포드가 제거되면 해당 포드에서 실행 중인 모든 태스크 인스턴스가 중단되고 나중에 Airflow에서 실패로 표시됩니다. | 
| Airflow 태스크 | 환경 개요를 참조하세요. | 
| 미확인 Celery 작업 | Celery 브로커 큐의 미확인 작업 수입니다. 미확인 작업에는 queued및running작업 상태의 Airflow 작업 인스턴스가 포함됩니다. 두 상태 모두 Airflow 작업 실행에 정상입니다. 미확인 Celery 작업 그래프는 Airflow에서 처리되는 동안 이러한 상태의 작업을 미확인으로 출력합니다. Airflow 태스크 인스턴스가 비정상적으로 중단된 경우 (예: 좀비로 감지됨) visibility_timeout에 도달할 때까지 승인되지 않은 상태로 유지됩니다. 이 경우 그래프에는 오랫동안 확인되지 않은 상태로 유지되는 작업이 표시됩니다. Cloud Composer에서 표시 제한 시간 값은 7일로 설정됩니다. 이 기간이 지나면 작업이 다시 전송되며 확인될 수 있습니다. 다시 실패하면 7일 동안 확인되지 않은 상태로 유지될 수 있습니다. | 
| Celery 브로커 게시 제한 시간 | Celery Broker에 태스크를 게시할 때 발생한 총 AirflowTaskTimeout오류 수입니다. 이 측정항목은celery.task_timeout_errorAirflow 측정항목에 해당합니다. | 
| Celery 실행 명령어 실패 | Celery 태스크에서 0이 아닌 종료 코드의 총 개수입니다. 이 측정항목은 celery.execute_command.failureAirflow 측정항목에 해당합니다. | 
| 시스템에서 종료된 태스크 | 작업자 메모리 또는 하트비트 등의 문제로 인해 태스크 실행자가 SIGKILL로 종료한 워크플로 태스크 수입니다. | 
트리거 통계
| 환경 측정항목 | 설명 | 
|---|---|
| 지연된 태스크 | 특정 시점에 지연된 상태인 태스크 수입니다. 지연된 태스크에 대한 자세한 내용은 지연 가능한 연산자 사용을 참조하세요. | 
| 완료된 트리거 | 모든 트리거 포드에서 완료된 트리거 수입니다. | 
| 실행 중인 트리거 | 트리거 인스턴스당 실행 중인 트리거 수입니다. 이 차트에는 트리거마다 별도의 선이 표시됩니다. | 
| 차단 트리거 | 기본 스레드를 차단한 트리거 수입니다(완전 비동기가 아닌 경우). | 
| 총 트리거 CPU 사용량 | 모든 Airflow 트리거 포드에서 실행되는 컨테이너별 총 vCPU 코어 사용량 및 모든 트리거에 대해 결합된 vCPU 한도입니다. | 
| 총 트리거 메모리 사용량 | 모든 Airflow 트리거 포드에서 실행되는 컨테이너별 총 메모리 사용량 및 모든 트리거에 대해 결합된 vCPU 한도입니다. | 
| 총 트리거 디스크 사용량 | 모든 Airflow 트리거 포드에서 실행되는 컨테이너별 총 디스크 공간 및 모든 트리거에 대해 결합된 디스크 공간 한도입니다. | 
| 활성 트리거 | 활성 트리거 인스턴스 수 | 
| 트리거 컨테이너 재시작 | 트리거 컨테이너 재시작 횟수입니다. | 
웹 서버 통계
| 환경 측정항목 | 설명 | 
|---|---|
| 웹 서버 상태 | 환경 개요를 참조하세요. | 
| 웹 서버 CPU 사용량 | 모든 Airflow 웹 서버 포드에서 실행되는 컨테이너별 총 vCPU 코어와 모든 웹 서버에 대해 결합된 vCPU 한도입니다. | 
| 웹 서버 메모리 사용량 | 모든 Airflow 웹 서버 포드에서 실행되는 컨테이너별 총 메모리 사용량 및 모든 웹 서버에 대해 결합된 vCPU 한도입니다. | 
| 총 웹 서버 디스크 사용량 | 모든 Airflow 웹 서버 포드에서 실행되는 컨테이너별 총 디스크 공간 사용량 및 모든 웹 서버에 대해 결합된 디스크 공간 한도입니다. | 
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 Scheduler에서 수행되는 서로 다른 두 가지 개별 작업입니다.
 
  
  DAG 파싱 시간은 Airflow Scheduler가 DAG 파일을 읽고 이를 파싱하는 데 걸리는 시간입니다.
Airflow Scheduler가 DAG에서 태스크를 예약할 수 있으려면 Scheduler가 DAG 파일을 파싱하여 DAG 및 정의된 태스크의 구조를 확인해야 합니다. DAG 파일이 파싱된 후 Scheduler는 DAG에서 태스크 예약을 시작할 수 있습니다.
DAG 실행 시간은 DAG에 대한 모든 태스크 실행 시간의 합계입니다.
DAG에서 특정 Airflow 태스크를 실행하는 데 걸리는 시간을 보려면 Airflow 웹 인터페이스에서 DAG를 선택하고 태스크 기간 탭을 엽니다. 이 탭에는 지정된 마지막 DAG 실행 수에 대한 태스크 실행 시간이 표시됩니다.