Opened 2 months ago

Last modified 4 days ago

#13487 assigned Bug Report - General

python bindings do not support the systemd-journal logging option (--systemd-journal)

Reported by: Gary Buhrmaster Owned by: Bill Meek
Priority: minor Milestone: 31.0
Component: Bindings - Python Version: Master Head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

In what probably should have been a (co-)requirement before committing the patches from #12663 the python bindings were never updated to support journal logging.

I will note that one may need to make the import of the systemd.journal library inside a try/except to handle non-Linux OS's (I have not checked if there is a dummy implementation on FreeBSD or MacOS or Windows, but would not be surprised if they do not exist there).

Attachments (2)

logging_systemd-journal_pull_request_182.path (9.8 KB) - added by rcrdnalor 8 weeks ago.
test_systemd_journal_argparse.py (1.1 KB) - added by rcrdnalor 8 weeks ago.

Download all attachments as: .zip

Change History (4)

Changed 8 weeks ago by rcrdnalor

comment:1 Changed 8 weeks ago by rcrdnalor

Python Bindings: Add logging to 'systemd-journal'.

This patch adds the option to log to 'systemd-journal' from MythTV's Python Bindings. ('--systemd-journal'). If the python module 'systemd.journal' is not available, and '--systemd-journal' is selected, the user will be informed by an exception ('MythError?').

Caution: Since the python package "python-systemd" may be not installed by default or is not available on the OS-platform (e.g.: Windows), this commit adds a 'weak' run-time dependency ("python-systemd")!

Additionally, it follows the generic conventions used by 'MythCommandLineParser?':

  • Logging to database is deactivated by default and can be activated by '--enable-dblog'. The command line option '--nodblog' is kept for legacy reasons.
  • Logging to 'logfile', 'logpath', 'syslog', 'systemd-journal' is mutually exclusive: The user will be informed if he tries to combine those options. Previously, the bindings used the last option and deactivate the others, without user notification.

Attached a patch against pull request 182 and a file showing its usage.

Please decide.

Changed 8 weeks ago by rcrdnalor

comment:2 Changed 4 days ago by Stuart Auchterlonie

Milestone: needs_triage31.0
Owner: changed from Raymond Wagner to Bill Meek
Status: newassigned
Note: See TracTickets for help on using tickets.