]> git.ipfire.org Git - pakfire.git/commitdiff
daemon: Add flags to be more verbose
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 27 May 2022 08:51:26 +0000 (08:51 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 27 May 2022 08:51:26 +0000 (08:51 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/pakfire/daemon.py
src/pakfire/logger.py
src/scripts/pakfire-daemon.in

index 84f130089608d0d07d95bf9f8545397a59d2d15f..35d7c9c15db0767e748e7c831109a247a07f5a7e 100644 (file)
@@ -3,6 +3,7 @@
 import asyncio
 import hashlib
 import json
+import logging
 import multiprocessing
 import os
 import signal
@@ -35,13 +36,15 @@ class BuildJob(dict):
 
 
 class Daemon(object):
-       def __init__(self, config_file="daemon.conf"):
+       def __init__(self, config_file="daemon.conf", debug=False, verbose=False):
                self.config = config.Config(config_file)
 
                # Setup logger
                self.log = logger.setup(
                        "pakfire.daemon",
+                       level=logging.DEBUG if debug else logging.INFO,
                        syslog_identifier="pakfire-daemon",
+                       enable_console=verbose,
                )
 
                # Connect to the Pakfire Hub
index 7fc14e2380ec892e9a959a31e9595b8360ebcbf7..2787f806e9a8657b0d28da0966ae4a5a6393ff78 100644 (file)
@@ -24,9 +24,9 @@ import sys
 import systemd.journal
 import time
 
-def setup(name, syslog_identifier="pakfire", enable_console=True):
+def setup(name, level=logging.INFO, syslog_identifier="pakfire", enable_console=True):
        log = logging.getLogger(name)
-       log.setLevel(logging.DEBUG)
+       log.setLevel(level)
 
        # Do not propagate anything
        log.propagate = False
@@ -34,7 +34,6 @@ def setup(name, syslog_identifier="pakfire", enable_console=True):
        # Enable console output
        if enable_console:
                console = ConsoleHandler()
-               console.setLevel(logging.INFO)
                log.addHandler(console)
 
        # Enable logging to journald
index fa7874b981f5b2baefe9e353a873e9be9550c149..bc4ff6c770ac57851a6a99b2d5acf09bff30e5e1 100644 (file)
@@ -35,6 +35,12 @@ class Cli(object):
                parser.add_argument("--config", "-c", nargs="?",
                        default="@sysconfdir@/pakfire/daemon.conf",
                        help=_("Configuration file to load"))
+               parser.add_argument("--debug", action="store_true",
+                       help=_("Enable debug mode"),
+               )
+               parser.add_argument("--verbose", action="store_true",
+                       help=_("Enable logging output on the console"),
+               )
 
                return parser.parse_args()
 
@@ -47,6 +53,8 @@ class Cli(object):
                # Initialize the daemon
                d = pakfire.daemon.Daemon(
                        args.config,
+                       debug=args.debug,
+                       verbose=args.verbose,
                )
 
                # Run it