You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

zappa-scheduler

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

zappa-scheduler

Store future tasks in the db and call them after set delays.

1.0.7
pipPyPI
Maintainers
1

zappa_scheduler

Description

A db driven way to run tasks at a future point in time, or at a regular interval, for Django Zappa projects (https://github.com/Miserlou/Zappa).

Installation

pip install zappa_scheduler

To check for tasks every 4 minutes, add the below to zappa_settings.json:




{
  "dev": {
    "keep_warm": false,
    "events": [
      {
        "function": "zappa_scheduler.zappa_check.now",
        "expression": "rate(4 minutes)"
      }
    ]
  }
}

Usage

Low level currently, where you create and save your tasks straight to db.

def test_function(_arg1, _arg2, _kwarg1=1, _kwarg2=2):
    return _arg1, _arg2, _kwarg1, _kwarg2

call_later = CallLater()
call_later.function = test_function
call_later.args = (3, 4) # for the above function
call_later.kwargs = {'_kwarg1': 11, '_kwarg2': 22} # for the above function
call_later.time_to_run = timezone.now() + timedelta(minutes=8)
call_later.save()

You can also repeatedly call your task:

call_later_twice.every = timedelta(seconds=1)
call_later_twice.repeat = 2

There are 2 types of failure:

  • If a task fails to run, it is run on the next checking event. By default, there are 3 attempts to run a function.
  • If a task takes too long to run, it is again run on the next checking event. By default, there are 3 retries.

...the task is labelled as problematic after repeated fails.

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts