airflow.cfg
EmailOperator
Gmail
활용하였다.
관련 코드
https://github.com/GHGHGHKO/airflow/blob/master/dags/mail_test.py
airflow.cfg
[smtp] 설정 문서
https://airflow.apache.org/docs/apache-airflow/stable/configurations-ref.html#config-smtp
EmailOperator
https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/operators/email/index.html
Gmail SMTP 활용
https://support.google.com/mail/answer/7126229?hl=ko
airflow.cfg [smtp] 설정
airflow.cfg 내용은
github에 올리지 않았다.
설정은 아래와 같이 했다.
Gmail SMTP 활용 방법은 자료가 많고 설정하기도 쉬워서
따로 적지 않았다.
[smtp]
# If you want airflow to send emails on retries, failure, and you want to use
# the airflow.utils.email.send_email_smtp function, you have to configure an
# smtp server here
smtp_host = smtp.gmail.com
smtp_starttls = False
smtp_ssl = True
# Example: smtp_user = airflow
smtp_user = smtp_user_gmail_id
# Example: smtp_password = airflow
smtp_password = your_password
smtp_port = 465
smtp_mail_from = smtp_user_gmail_id
smtp_timeout = 30
smtp_retry_limit = 5
send_email TAG 생성
email_operator = EmailOperator(
task_id='send_email',
to='receiver@example.com',
subject='[TEST] 테스트 메일입니다.',
html_content="""
테스트 메일입니다.<br/><br/>
ninja template<br/>
{{ data_interval_start }}<br/>
{{ ds }}<br/>
""",
)
jinja template을 지원한다.
공식 문서에 따르면
파일도 첨부가 가능하다.
주간에 무거운 데이터를 추출하기 부담스러우니
새벽에 데이터 추출 스케줄을 걸어두고
실무자에게 메일을 보내면 업무에 도움이 될 것 같다.
물론 작동도 잘 된다.
'Airflow' 카테고리의 다른 글
Airflow PostgresOperator Custom 하기 (0) | 2022.03.17 |
---|---|
Airflow custom Operator 만들기 (2) | 2022.03.16 |
Airflow BranchSQLOperator 활용 (0) | 2022.03.14 |
Docker Airflow Oracle 활용하기 (0) | 2022.03.10 |
Docker Airflow 설치하기 (2) | 2022.03.09 |