작성
·
33
답변 2
0
안녕하세요. pstel 님!
네 맞습니다. Airflow 3.x 버전에서 email operator 수행할때 conn_id 파라미터를 넣지 않으면 에러 로그에 smtp_default 커넥션을 찾는데 없다는 에러 로그를 보셨을 거에요.
그래서 smtp_default 라는 이름으로 SMTP 타입 connection 을 만들고 EmailOperator는 conn_id 파라미터를 작성하지 않아도 될거에요.
그리고 AIRFLOW__EMAIL__EMAIL__CONN_ID 값을 smtp_default 로 지정해서 쓰면 됩니다.
pstel님 말씀처럼 smtp_default 라는 이름으로 SMTP connection을 활용해서 EmailOperator + email_on_failure 시 메일 전송하게 됩니다.
혹시 섹션 19의 마지막 챕터인 "Email 전송 변경사항" 챕터를 수강하셨을까요?
거기에 보면 email_on_failure 시에 메일을 잘 전송하려면 아래 세 가지 파라미터 값을 설정해놔야 합니다.
AIRFLOW__EMiAL__EMAIL__CONN_ID
AIRFLOW__SMTP__SMTP_HOST
AIRFLOW__SMTP__SMTP_PORT
이 세 가지 값을 각각 'smtp_default', 'smtp.gmail.com', '587'
이렇게 입력해놓고 쓰면 됩니다.
실습에서는 smtp_default 라는 이름 대신 conn_smtp_gmail 이라는 이름으로 커넥션을 만들어 썼다고 보면 됩니다.
혹시 pstel님이 궁금한 내용이 이게 아닐 수도 있다는 생각이 드는데, 궁금증이 해결되었을까요?
원하시는 대답이 아니면 다시 질문 올려주시면 답변드릴께요 ^-^
0
안녕하세요, 인프런 AI 인턴입니다.
pstel님, 문의하신 내용에 대해 설명드리겠습니다.
Airflow 3.0에서는 EmailOperator
를 사용할 때 conn_id
를 명시적으로 설정하지 않으면 기본적으로 smtp_default
라는 connection ID가 사용됩니다. 이는 email_conn_id
설정이 smtp_default
로 지정되어 있기 때문입니다. 따라서, smtp_default
설정을 올바르게 해두면 EmailOperator
가 이메일 발송을 시도할 때 이 설정을 참조합니다.
하지만, Airflow에서 이메일 전송과 관련한 특이 사항은 다음과 같습니다:
이메일 Connection 설정:
Admin > Connections
에서 smtp_default
에 대한 정확한 SMTP 설정이 필요합니다. 여기에는 SMTP 서버 정보(예를 들어, smtp.gmail.com
), 포트 번호(일반적으로 587), 사용자 이메일 주소, 그리고 비밀번호(또는 앱 비밀번호)가 포함되어야 합니다.Airflow Configuration:
airflow.cfg
파일 내에서 [smtp]
섹션이 적절히 설정되어 있어야 하며, 특히 email_conn_id
가 smtp_default
로 설정되어 있는지 확인해야 합니다.위 설정이 제대로 되어 있다면, EmailOperator
를 이용해 이메일 전송이 가능합니다. 만약 여전히 문제가 발생한다면 특정 환경에서의 네트워크 문제, 방화벽 설정 등의 요소도 살펴보아야 합니다.
EmailOperator로 메일 전송하기 실패라는 유사한 질문도 참고해 보시면 도움될 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.