SystemD wrapper on Cython
Project description
Python systemd wrapper using Cython
Installation
All packages available on github releases.
Debian/Ubuntu
Install repository key
wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=bintray' | \
apt-key add -
Install the repository file
Debian Jessie:
echo "deb http://dl.bintray.com/mosquito/cysystemd jessie main" > /etc/apt/sources.list.d/cysystemd.list
apt-get update
apt-get install python-cysystemd python3-cysystemd
Ubuntu Xenial:
echo "deb http://dl.bintray.com/mosquito/cysystemd xenial main" > /etc/apt/sources.list.d/cysystemd.list
apt-get update
apt-get install python-cysystemd python3-cysystemd
Ubuntu Bionic:
echo "deb http://dl.bintray.com/mosquito/cysystemd bionic main" > /etc/apt/sources.list.d/cysystemd.list
apt-get update
apt-get install python-cysystemd python3-cysystemd
Centos 7
yum localinstall \
https://github.com/mosquito/cysystemd/releases/download/0.17.1/python-cysystemd-0.17.1-1.centos7.x86_64.rpm
Installation from sources
You should install systemd headers
For debian users:
apt-get install build-essential \
libsystemd-journal-dev \
libsystemd-daemon-dev \
libsystemd-dev
For CentOS/RHEL
yum install gcc systemd-devel
And install it from pypi
pip install cysystemd
Usage examples
Systemd daemon notification
from cysystemd.daemon import notify, Notification
# Send READY=1
notify(Notification.READY)
# Send status
notify(Notification.STATUS, "I'm fine.")
# Send stopping
notify(Notification.STOPPING)
Write message into Systemd journal
from cysystemd import journal
journal.write("Hello Lennart")
# Or send structured data
journal.send(
message="Hello Lennart",
priority=journal.Priority.INFO,
some_field='some value',
)
Or add logging handler to python logger
from cysystemd import journal
import logging
import uuid
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger()
logger.addHandler(journal.JournaldLogHandler())
try:
log.info("Trying to do something")
raise Exception('foo')
except:
logger.exception("Test Exception %s", 1)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cysystemd-0.17.2.tar.gz
(175.4 kB
view details)
File details
Details for the file cysystemd-0.17.2.tar.gz
.
File metadata
- Download URL: cysystemd-0.17.2.tar.gz
- Upload date:
- Size: 175.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/33.1.1 requests-toolbelt/0.8.0 tqdm/4.20.0 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7da8b39781f3d636594070319b08afa2ec6689e2f433cc68c854fd83916b1cf9 |
|
MD5 | 9e1d44edecba1ada9371acf9d39171d7 |
|
BLAKE2b-256 | dd9db2a7365b4b7ddd991ebddbe8fb17aa0bcee9fdbcab7deabc9afb9b4528b1 |