Skip to main content

Jettison functions with jetsam!

Project description

Jetsam

  • True daemonizer using native C calls
  • Currently only compatible with *nix file systems
  • Extra Paranoid Edition uses that double fork magic!

jetsam definition: floating debris ejected from a ship

C Extension

To showcase a C library being used as a native python module

Example

import time
import logging
import jetsam
from jetsam import daemon

# jetsam will log pids and errors from daemons
# to a single log file. It will also update the file
# with the current status of the daemon
#
#   function_name:pid:status
#
jetsam.set_logfile("user_daemon.log")  # defaults to /tmp/jetsam.log


@daemon
def func():
    logging.basicConfig(filename="func.log", level=logging.DEBUG, filemode="w")
    while True:
        time.sleep(1)
        logging.debug("I am running in my own interpreter!")


func()  # detachs from current interpreter each function immediately returns 

print("simulate long running process...")
time.sleep(3)

jetsam.end_daemon(func)

print("Eject and forget with jetsam!")

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

jetsam-0.2.1.tar.gz (7.2 kB view details)

Uploaded Source

File details

Details for the file jetsam-0.2.1.tar.gz.

File metadata

  • Download URL: jetsam-0.2.1.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for jetsam-0.2.1.tar.gz
Algorithm Hash digest
SHA256 a7c25ac312931e9e5a30bdd575d866dff417e50a3a7d24e6d99a724c97fffd28
MD5 d0285e7beb87c5dd8386bcdf900774db
BLAKE2b-256 9b11b7fe1da14fb3e3bc44058ee03d320464ada2bde5698156a6c3e015c5c6f8

See more details on using hashes here.

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