Pure python logging handler for writing logs to the journald using native protocol
Project description
logging-journald
Pure python logging handler for writing logs to the journald using native protocol.
import logging
from logging_journald import JournaldLogHandler, check_journal_stream
# Use python default handler
LOG_HANDLERS = None
if (
# Check if program running as systemd service
check_journal_stream() or
# Check if journald socket is available
JournaldLogHandler.SOCKET_PATH.exists()
):
LOG_HANDLERS = [JournaldLogHandler()]
logging.basicConfig(level=logging.INFO, handlers=LOG_HANDLERS)
logging.info("Hello logging world.")
MESSAGE_ID
field
As defined in catalog documentation:
A
128-bit
message identifier ID for recognizing certain message types, if this is desirable. This should contain a 128-bit ID formatted as a lower-case hexadecimal string, without any separating dashes or suchlike. This is recommended to be a UUID-compatible ID, but this is not enforced, and formatted differently. Developers can generate a new ID for this purpose with systemd-id128 new.
So you're free to choose how you want to act. By default, MESSAGE_ID
is generated as a hash of the message and some
static fields. But you can disable this by passing use_message_id=False
to the class constructor.
from logging_journald import JournaldLogHandler
...
handler = JournaldLogHandler(use_message_id=False)
...
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
Built Distribution
Hashes for logging_journald-0.6.8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b92c3810120629f2a0c6833b03cc6aa9c74d6f531aee71c6a7aaa50f455b175 |
|
MD5 | 43554e773d89b82b38a2db3de407ebc6 |
|
BLAKE2b-256 | 1c9d86f40db5094c31e300a4bd84e3ccd17e5b525f8df7278c94d84432cd908b |