Skip to main content

Notifications for Earth Engine tasks.

Project description

taskee logo

Earth Engine Python PyPI version CI

taskee is a command-line tool for monitoring Google Earth Engine tasks that can send notifications to your phone or computer to let you know when your tasks finish.

Features

  • 🔍 Monitor Google Earth Engine tasks created with the Python API and/or the Javascript Code Editor
  • 💻 Native notifications for Linux, Mac, and Windows
  • :speech_balloon: Mobile push notifications for Android
  • :tv: Built-in CLI dashboard

Setup

pip install taskee

Run the setup steps below as needed.

Earth Engine (required) Set up a Google Earth Engine account. If you haven't authenticated Earth Engine before, you'll be asked to do so the first time you run taskee.

Pushbullet (optional) If you want to receive mobile notifications (Android only), you'll need to create or connect an account with Pushbullet and download the app on your device(s). Once Pushbullet is installed and you're logged in, go to your Account Settings, create an Access Token, and copy the API key. The first time you run taskee with a pushbullet notifier, you'll need to enter your API key. That key will be stored locally so you don't have to enter it again.

notify-send (Linux only) Linux users may need to install notify-send to enable native notifications. If taskee is not working with the native notifier, run sudo apt install libnotify-bin.

Usage

taskee offers a few different commands which you can see by running taskee --help.

Usage: taskee [OPTIONS] COMMAND [ARGS]...

  Monitor Earth Engine tasks and send notifications when they change states.

  Examples
      $ taskee test
      $ taskee tasks
      $ taskee log
      $ taskee dashboard failed completed -n pushbullet -i 0.5

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  dashboard  Show a live-updating dashboard.
  log        Log task events as they occur.
  tasks      Display a table of current Earth Engine tasks.
  test       Send test notifications.

Running taskee

The taskee dashboard and taskee log commands initialize and run the notification system. They will continue running until you cancel them, periodically checking your Earth Engine tasks and sending you notifications.

Choosing a Mode

There are two modes that taskee can run in: dashboard and log.

dashboard shows a live-updating dashboard that makes it easy to visually keep track of your tasks and events.

taskee dashboard

A dashboard showing live-updating tasks and events

log is designed to be run in the background and prints minimal logs as events occur.

taskee log

A terminal showing logs of new events.

Filtering Events

There are a lot of possible events that can happen to Earth Engine tasks. The list below describes the events recognized by taskee.

Event Description
created :seedling: A new task is submitted.
started :herb: A task starts processing.
attempted :fallen_leaf: An attempt fails and the task is restarted.
completed :evergreen_tree: A task finished successfully.
failed :fire: A task fails to complete.
cancelled :axe: The user cancels the task.
error :exclamation: taskee crashes.

By default, taskee will notify you of errors and completed or failed tasks, but you can specify which events to watch for by listing them when you launch taskee. For example:

taskee dashboard failed attempted cancelled error

You can also use all as a shortcut and taskee will notify you of all events.

taskee dashboard all

Selecting Notifiers

By default, taskee will use the native notification system built into your computer's operating system.

If you want notifications on other devices, set up Pushbullet and then select it with the -n --notifier option.

taskee dashboard --notifier pushbullet

Like with events, you can use all as a shortcut and taskee will send both native and pushbullet notifications.

taskee dashboard -n all

Other Options

You can set how often tasks are re-checked (in minutes) using the -i --interval_mins option.

taskee dashboard -i 10

Warning
taskee doesn't set a minimum interval, but if updates occur too frequently you may run into rate limits for Earth Engine or Pushbullet.

Service Credentials

By default, taskee uses the persistent credentials stored on your local machine (whichever account you authenticated last). To use a service account instead, pass the relative path to your private key file using the -k --private-key option.

taskee dashboard -k path/to/private-key.json

Example

Using what we learned above, let's set up taskee to start running in log mode, check for cancelled or completed task events, send us notifications using pushbullet, and update every 30 minutes.

taskee log cancelled completed -n pushbullet -i 30

Other Commands

Aside from running the notification system, taskee has a few more commands that may be helpful.

Task Summaries

The tasks command checks your Earth Engine tasks once, giving you a snapshot of your current tasks in a nice, readable table.

taskee tasks

A table showing details for a list of tasks.

Test Notifications

The test command sends a mock notification to any notifiers selected with the -n --notifier option. You can use this to make sure notifications are set up and working.

taskee test -n native

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

taskee-0.1.0.tar.gz (92.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

taskee-0.1.0-py3-none-any.whl (98.0 kB view details)

Uploaded Python 3

File details

Details for the file taskee-0.1.0.tar.gz.

File metadata

  • Download URL: taskee-0.1.0.tar.gz
  • Upload date:
  • Size: 92.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for taskee-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2642fb9def0fb17866c76ace647b7e8537ada812c7a343e93fb7d8d87d732f5c
MD5 8524453da40a09c7240e4e1559ea2c6c
BLAKE2b-256 e6a4163724e2982189647ac8560367cdfa831ae5c59407d6157a35e669eff551

See more details on using hashes here.

Provenance

The following attestation bundles were made for taskee-0.1.0.tar.gz:

Publisher: publish.yaml on aazuspan/taskee

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file taskee-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: taskee-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 98.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for taskee-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 974d6709c671ba3d080166ecae2b94ed274cd965c527465f71bef2b84f79e797
MD5 8583243999863f3d5457eb9a8f830be9
BLAKE2b-256 2d17ca2706dc36b851a84d570468ac893c7581f95f8f1b944d698289b2ba4db6

See more details on using hashes here.

Provenance

The following attestation bundles were made for taskee-0.1.0-py3-none-any.whl:

Publisher: publish.yaml on aazuspan/taskee

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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