]> git.ipfire.org Git - pakfire.git/commitdiff
logger: Add debug switch
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 16 Sep 2022 13:33:56 +0000 (13:33 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 16 Sep 2022 13:33:56 +0000 (13:33 +0000)
The setup function for the logger now has a debug switch to enable debug
messages which will be sent to syslog only and not be printed to the
console.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/pakfire/daemon.py
src/pakfire/logger.py
src/scripts/pakfire-builder.in

index 550cc7e4ac00e62e32cbd8d9d5594d4c4cf392b3..dfa0e54e5835b0e45d89ae4f96301ec2064bc61f 100644 (file)
@@ -28,9 +28,9 @@ class Daemon(object):
                # Setup logger
                self.log = logger.setup(
                        "pakfire.daemon",
-                       level=logging.DEBUG if self.debug else logging.INFO,
                        syslog_identifier="pakfire-daemon",
                        enable_console=self.verbose,
+                       debug=self.debug,
                )
 
                # Connect to the Pakfire Hub
index 14375594001b5cacee9b029a14725009feec688b..c20b077b144bf7496005210c3d5f6f2fc052dbc0 100644 (file)
@@ -24,7 +24,13 @@ import sys
 import systemd.journal
 import time
 
-def setup(name, level=logging.INFO, syslog_identifier="pakfire", enable_console=True):
+def setup(name, syslog_identifier="pakfire", enable_console=True, debug=False):
+       level = logging.INFO
+
+       # Enable debug logging
+       if debug:
+               level = logging.DEBUG
+
        log = logging.getLogger(name)
        log.setLevel(level)
 
@@ -39,6 +45,9 @@ def setup(name, level=logging.INFO, syslog_identifier="pakfire", enable_console=
                console = ConsoleHandler()
                log.addHandler(console)
 
+               # Do not send any debug output to the console
+               console.setLevel(logging.INFO)
+
        # Enable logging to journald
        journal = systemd.journal.JournalHandler(
                SYSLOG_IDENTIFIER=syslog_identifier,
index a1256a6bb20ac6319df85ea901f1563eba6e98fa..4aa408ab2945e728dd210435cf72aed48afd220a 100644 (file)
@@ -41,6 +41,8 @@ class Cli(object):
                # Add arguments
                parser.add_argument("--arch", "-a", nargs="?",
                        help=_("Run pakfire for the given architecture"))
+               parser.add_argument("--debug", action="store_true",
+                       help=_("Enable debug mode"))
                parser.add_argument("--distro", nargs="?", default="ipfire3", # XXX for now
                        help=_("Choose the distribution configuration to use for build"))
                parser.add_argument("--disable-snapshot", action="store_true",
@@ -148,6 +150,7 @@ class Cli(object):
                        "pakfire.builder.cli",
                        syslog_identifier="pakfire-builder",
                        enable_console=True,
+                       debug=ns.debug,
                )
 
                return pakfire.Pakfire(arch=ns.arch, conf=conf, logger=logger.log)