Skip to main content

Publish Airflow notification errors to SNS Topic

Project description

Python 3.7 PyPI version License: MIT Twitter Follow

Publish Airflow Notification to a SNS Topic

This package adds a callback function to use in failures to DAGs and Tasks in a Airflow project.

Installation

pip install airflow-notify-sns

Usage

from datetime import timedelta

# Airflow native imports to create a DAG
from airflow import DAG, utils
from airflow.operators.bash_operator import BashOperator

# Here is function import
from airflow_notify_sns import airflow_notify_sns

# Dag Definition
dag = DAG(
    dag_id='test_dag',
    default_args={
        'owner': 'airflow',
        'depends_on_past': False,
        'start_date': utils.dates.days_ago(1),
        'retries': 3,
        'retry_delay': timedelta(minutes=5)
    },
    schedule_interval="@daily",
    dagrun_timeout=timedelta(minutes=60),
    sla_miss_callback=airflow_notify_sns,
    on_failure_callback=airflow_notify_sns
)

# Add your tasks here
t = BashOperator(
    dag=dag,
    task_id='test_env',
    bash_command='/tmp/test.sh',
    env={'EXECUTION_DATE': '{{ ds }}'},
    on_failure_callback=airflow_notify_sns
)

When DAG or tasks ends in error, a notification will be send to a SNS Topic using AWS default connection (aws_default).

Required Variable

This module will try to find a variable named airflow_notify_sns_arn in your Airflow environment, containing SNS Topic ARN where message will be published to.

If variable is not found, function will abort execution with no error.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airflow-notify-sns-0.0.2.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

airflow_notify_sns-0.0.2-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file airflow-notify-sns-0.0.2.tar.gz.

File metadata

  • Download URL: airflow-notify-sns-0.0.2.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.23.0 setuptools/51.1.2.post20210112 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for airflow-notify-sns-0.0.2.tar.gz
Algorithm Hash digest
SHA256 32217d2425152c0a3e308dcf06dedb86c6b1758fc4841474f44c54b8bc69a5e5
MD5 624d0dd5d74febaf7b31a27b860046fb
BLAKE2b-256 d013ba16b7619c2e725120ff4798920e0c64e57babbbbc28ca3715b83adefe01

See more details on using hashes here.

Provenance

File details

Details for the file airflow_notify_sns-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: airflow_notify_sns-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.23.0 setuptools/51.1.2.post20210112 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for airflow_notify_sns-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c73ce82e5967f0a8ba0deef0a593a1ba98bfcd8367e289e15722a85778f148c9
MD5 ff351f373e933d0e9d51648a7a80eebc
BLAKE2b-256 347dd84e32c89b729c6eed9932d516fa659ae3efc3fecb6ddf0e588a625113fc

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page