본문 바로가기
학습장/Data Engineering

ADF 배치작업 모니터링 방안

by sodoo_ 2023. 2. 7.

Azure Data Factory를 활용한 데이터 처리 관련 작업시 배치 모니터링 등으로 활용할 수 있는 방법 정리해보았습니다.

 

 

ADF Error Handling 방법들

 

1. webhook

Teams 내에 curl 등을 통해 webhook을 받을 수 있는 Incoming webhook을 생성하여, Pipeline 내에서 특정 블럭이 실패시 호출하여 실패 알림으로 활용가능

webhook용 파이프라인의 URL은 Incoming webhook에서 생성된 URL 지정

 

Teams 채널에 webhook 위한 메뉴얼 참조

https://learn.microsoft.com/ko-kr/azure/data-factory/how-to-send-notifications-to-teams?tabs=data-factory 

 

Microsoft Teams 채널에 알림을 보내는 방법 - Azure Data Factory & Azure Synapse

Azure Data Factory 또는 Synapse Analytics 파이프라인에서 Microsoft Teams 채널로 알림을 보내는 방법을 알아봅니다.

learn.microsoft.com

 

2. 메일링

메일 발송을 하려면 ADF 말고 Azure 내에 Logic App이라는 별개의 서비스를 활용해야 하는 듯 합니다.

Databricks 등에서 python 스크립트를 지원하므로 smtp라이브러리 등을 활용할 수도 있겠지만 가이드대로 Logic app에서 outlook 메일보내기 기능을 활용하는게 비교적 간단하였습니다. 아래 메뉴얼 참조하여 3가지 정도 블럭으로 DB 내에 배치 작업시 로그테이블에 로그화 하였다면 로그테이블을 주기적으로 읽어서 메일링이 가능했습니다.

 

 

- Http 요청을 받는 블럭

- 위 트리거로 받은 json 배열 데이터를 HTML 테이블로 가공해주는 블럭

- 위 HTML 테이블 결과를 메일 본문으로 세팅하고, Http 요청을 통해 받은 정보로 메일 발송해주는 블럭

 

Logic App활용한 메일링 관련 메뉴얼

https://learn.microsoft.com/ko-kr/azure/data-factory/how-to-send-email

 

이메일을 보내는 방법 - Azure Data Factory & Azure Synapse

Azure Data Factory 또는 Azure Synapse 파이프라인을 사용하여 이메일을 보내는 방법을 알아봅니다.

learn.microsoft.com

 

메일링은 Azure Logic App을 활용할 수 있는 수많은 기능 중 하나일 뿐이고 Logic App은 잘 써보면 유용한 기능을 많이 활용할 수 있을 것 같습니다.

 

3. 메트릭

Metric은 ADF 내에 모니터링을 위해 지원되는 기능으로 아직 적용해보진 않았지만, 규칙을 잘 정해두면 유용하게 사용할 수 있을 것 같습니다.

예를 들어 실패한 파이프라인 작업의 수를 정의하여 이 수치를 넘을 경우만 알림을 준다던가, 리소스 그룹별로 알림을 다르게 주는 것도 가능해보입니다. 또한 자원사용률에 대한 임계점도 지정해줄 수 있는 것 같습니다.

업무상으로 허용되어서 굳이 모든 실패에 대한 트래킹이 필요없거나 할 경우 1번 webhook과 같이 모든 작업내에 별도로 세팅해야하는 번거로움도 없을 것 같습니다. 작업 그룹 별로 알림의 심각도를 지정하는데에도 활용할 수 있을 것 같습니다.

 

메트릭 활용에 대한 메뉴얼은 아래 링크 참고 부탁드립니다.

https://learn.microsoft.com/ko-kr/azure/data-factory/monitor-metrics-alerts

 

Data Factory 메트릭 및 경고 - Azure Data Factory

Azure Data Factory 모니터링에 사용할 수 있는 메트릭에 대해 알아봅니다.

learn.microsoft.com

 

'학습장 > Data Engineering' 카테고리의 다른 글

Azure 환경에서 구동되는 ETL - Azure ADF  (1) 2023.01.16
[DW] Mart Modeling  (1) 2022.11.28
[DW] Dimensional Modeling  (2) 2022.11.24
[DW] OLAP 정의와 목적  (2) 2022.11.18
[DB] index 등 기본개념 정리  (3) 2022.11.08

댓글