Ошибка при отправке электронной почты с GCP composer airflow - PullRequest
1 голос
/ 09 февраля 2020

Я пытаюсь настроить электронную почту, но получаю следующую ошибку. при выполнении задачи появляется следующая ошибка: - я использую Python3 с версиями airflow 10.3 в GCP Composer нужна помощь.

My airflow.cfg

[email]  
email_backend = airflow.contrib.utils.sendgrid.send_email  

[smtp]  
smtp_host = smtp.gmail.com  
smtp_starttls = True  
smtp_ssl = False  
smtp_user = airflow  
smtp_port = 587  
smtp_password = mypassword  
smtp_mail_from = myemail@gamil.com  

В моем файле dag я создал задачу: - dag.py file: -

from airflow.operators.email_operator import EmailOperator

email_task=EmailOperator(task_id='email_task',to="email@gamil.com", subject="test", html_content="<h1>Most important heading here</h1>", files=None, cc=None, bcc=None, mime_subtype='mixed', mime_charset='us_ascii', dag=dag)

Получение ошибки:

ОШИБКА - Ошибка HTTP 401: неавторизованный python_http_client.exceptions.UnauthorizedError: Ошибка HTTP 401: неавторизованный

Ответы [ 2 ]

1 голос
/ 09 февраля 2020

Ошибка является ошибкой авторизации, поэтому вам нужно проверить, правильно ли вы устанавливаете свой API-ключ Sendgrid (или пароль, если используете smtp-сервер).

На основе вашего airflow.cfg, мне кажется, что вы пытаетесь использовать и Sendgrid, и сторонний SMTP-сервер.

Флаг электронной почты определяет, какой из них использовать. В этом случае флаг email_backend = airflow.contrib.utils.sendgrid.send_email указывает, что вы собираетесь использовать Sendgrid.

Чтобы настроить Sendgrid в качестве сервера электронной почты, вам необходимо получить SENDGRID_API_KEY и установить оба ключ и SENDGRID_MAIL_FROM как переменные среды.

С другой стороны, если вы хотите использовать другой SMTP-сервер , вам нужно изменить флаг электронной почты на email_backend = airflow.utils.email.send_email_smtp. В этом случае вам необходимо переопределить имя пользователя и пароль smtp.

0 голосов
/ 31 марта 2020

С помощью Google Cloud Composer необходимо установить: SENDGRID_MAIL_FROM и: SENDGRID_API_KEY Composer "ПЕРЕМЕННЫЕ ОКРУЖАЮЩЕЙ СРЕДЫ"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...