Skip to main content

Export and visualize Airflow DAG runs as events in Google calendar.

Project description

Aircal

Aircal is a library that exports future DAG runs as events to Google Calendar.

DAG run visualization

Having DAG run as events in the calendar may help you:

  • visualize the utilization of your airflow workers to better spread your jobs
  • determine when a certain DAG should be finished to monitor the service.

The library will also observe the changes to your DAGs and synchronize it with the calendar:

  • add runs for the freshly added DAGs
  • change start and/or end time when an existing DAG changes the schedule (or the execution time changes significantly)
  • delete run events when a DAG is removed (or paused)

Tip: run the sync script regularly, perhaps, with you know, Airflow :)

The library only support DAG schedules that use the standard cron syntax. The rest will be ignored (with a warning).

Warning: This is an beta stage software. Expect occassional bugs and rough edges (PR welcome).

Installation & setup

pip install aircal

Alternatively you can clone the repo and install it from there:

pip install -e .

Google API credentials are required to create events in the calendar. You can obtain them here. Store credentials.json into a directory accessible by your code.

The library is modifying and deleting calendar events. I highly recommend creating a new calendar to be used by this software: "add calendar" -> "create new calendar" in Google calendar settings.

Usage

See example.py for an example of the potential pipeline that can be run on the regular intervals.

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

aircal-0.1.2.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

aircal-0.1.2-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file aircal-0.1.2.tar.gz.

File metadata

  • Download URL: aircal-0.1.2.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.1

File hashes

Hashes for aircal-0.1.2.tar.gz
Algorithm Hash digest
SHA256 71c0f5202097ab5a3d0a72fdbd47d241da823fb8fbae3f698ef619c75d5388d4
MD5 4eb1279c9a4982956ffbb5bf14bbc7f5
BLAKE2b-256 5b980342c4a0fa5b7496b0564cee36d5fa6407e8bec3a278f219013f4918da33

See more details on using hashes here.

File details

Details for the file aircal-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: aircal-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.1

File hashes

Hashes for aircal-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f6f72ddc5ea8a8d31f828fc987608e067afa404df73abda83bb15152ef610684
MD5 4cadf6b7eea1a2c83cc52d5f24a1d5a2
BLAKE2b-256 089f8d70887d2d858ee60da62f327818937a36e285006c56b7525e0890aab76a

See more details on using hashes here.

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