How do I setup Airflow's email configuration to send an email on errors?

前端 未结 2 1242
深忆病人
深忆病人 2021-01-12 12:42

I\'m trying to make an Airflow task intentionally fail and error out by passing in a Bash line (thisshouldnotrun) that doesn\'t work. Airflow is outputting the

2条回答
  •  心在旅途
    2021-01-12 13:38

    smtp_starttls basically means Use TLS

    Set this to False and set smtp_ssl to True if you want to use SSL instead. You probably need smtp_user and smtp_password for either.

    Airflow will not handle 2 step authentication. However, is you are using AWS you likely don't need it as your SMTP (SES) credentials are different from your AWS credentials.

    See here.

    EDIT: For airflow to send an email on failure, there are a couple things that need to be set on your task, email_on_failure and email.

    See here for example:

    def throw_error(**context):
        raise ValueError('Intentionally throwing an error to send an email.')
    
    
    
    t1 = PythonOperator(task_id='throw_error_and_email',
                        python_callable=throw_error,
                        provide_context=True,
                        email_on_failure=True,
                        email='your.email@whatever.com',
                        dag=dag)
    

提交回复
热议问题