Skip to main content

Simple sd_notify client library for Python 3

Project description

sd_notify

Simple sd_notify(3) client functionality implemented in Python 3.

Usage:

import sd_notify

notify = sd_notify.Notifier()
if not notify.enabled():
    # Then it's probably not running is systemd with watchdog enabled
    raise Exception("Watchdog not enabled")

# Report a status message
notify.status("Initialising my service...")
time.sleep(3)

# Report that the program init is complete
notify.ready()
notify.status("Waiting for web requests...")
time.sleep(3)

# Report an error to the service manager
notify.notify_error("An irrecoverable error occured!")
# The service manager will probably kill the program here
time.sleep(3)

Author: stig@stigok.com Dec 2019

Reference

<class 'sd_notify.Notifier'>

_send(msg)

Send string msg as bytes on the notification socket

enabled()

Return a boolean stating whether watchdog is enabled

notify()

Report a healthy service state

notify_error(msg=None)

Report a watchdog error. This program will likely be killed by the service manager.

If msg is not None, it will be reported as an error message to the service manager.

ready()

Report ready service state, i.e. completed initialisation

status(msg)

Set a service status message

Project details


Release history Release notifications

Download files

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

Files for sd-notify, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size sd_notify-0.1.0-py3-none-any.whl (3.6 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size sd-notify-0.1.0.tar.gz (2.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page