1. Email 오퍼레이터란?
- 이메일 전송해주는 오퍼레이터
- 이메일 전송을 위해 사전 셋팅 작업 필요
email_t1 = EmailOperator(
task_id = 'email_t1',
to = 'fdew@naver.com',
subject = 'Airflow 처리결과'
html_content = '정상 처리되었습니다.<br/>'
)
2. 사전 설정 작업 (Google)
- 구글 메일 서버 사용
- G-mail -> 설정 -> 모든 설정보기 -> 전달 및 POP/IMAP -> IMAP 사용
- 구글계정관리 -> 보안 -> 2단계인증 -> 앱비밀번호셋팅
- docker-compose.yaml 편집 (environment 항목에 추가)
AIRFLOW_SMTP_SMTP_HOST:'smtp.gmail.com'
AIRFLOW_SMTP_SMTP_USER:'{gmail계정}'
AIRFLOW_SMTP_SMTP_PASSWORD:'{앱비밀번호}'
AIRFLOW_SMTP_SMTP_PORT:587
AIRFLOW_SMTP_SMTP_MAIL_FROM:'{gmail계정}'
docker-compose.yaml 파일에 아래와 같이 추가

3. email 오퍼레이터 예제코드
/*dags_email_operator.py*/
from airflow import DAG
import pendulum
import datetime
from airflow.operators.email import EmailOperator
with DAG(
dag_id = "dags_email_operator",
schedule = "0 8 1 * *",
start_date = pendulum.datetime(2023, 3, 1, tz = "Asia/Seoul"),
catchup = False
) as dag:
send_email_task = EmailOperator(
task_id = 'send_email_task',
to = 'fdew@naver.com',
subject = 'Airflow 성공메일',
html_content = 'Airflow 작업이 완료되었습니다.'
)
4. 동작확인
Log 확인하여 정상동작 확인

수신된 이메일 확인

'Data 엔지니어링 > Airflow' 카테고리의 다른 글
| [Airflow] @task 데코레이터 (0) | 2025.01.09 |
|---|---|
| [Airflow] Python 오퍼레이터 & 외부 함수 사용하기 (0) | 2025.01.09 |
| [Airflow] Bash Operator & 외부 쉘파일 수행하기 (0) | 2025.01.09 |
| [Airflow] 오퍼레이터 & Cron스케줄 & Task 연결 (1) | 2025.01.08 |
| [Airflow] Airflow Docker 설치 방법 (0) | 2025.01.06 |