Bir SmtpNotifier Uygulama
Artık bir hata geri çağrısı (failure callback) oluşturmayı başardığına göre, ekip liderin tüm başarılı Dag çalıştırmalarının ekip alias’ına e-postayla gönderilmesini istedi. Airflow belgelerini inceledikten sonra, Airflow’un yerleşik bildirim (notifier) çerçevesini kullanmanın en iyi seçenek olduğuna karar verdin.
dag ve task nesneleri zaten içe aktarılmış durumda; alert_on_failure geri çağrı fonksiyonu ile get_sales_data ve process_sales_data görevleri senin için tanımlandı.
Bu egzersiz, kursun bir parçasıdır
Python ile Apache Airflow’a Giriş
Egzersiz talimatları
- SMTP bildirici (notifier) nesnesini içe aktar.
- Dag’e bir başarı geri çağrısı (success callback) özniteliği ekle.
- Bildirimi [email protected] adresine gönder.
- Bir konu (subject) ekle.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Import the notifier
from airflow.providers.smtp.notifications.smtp import ____
# Add a success callback notifier
@dag(dag_id='sales_etl_dag',
on_failure_callback=alert_on_failure,
____=SmtpNotifier(
to="____",
from_email="[email protected]",
____="sales_etl_dag run succeeded!"
))
def sales_etl_dag():
get_sales_data() >> process_sales_data()
sales_etl_dag()