aboutsummaryrefslogtreecommitdiff
path: root/src/wikiget/logging.py
diff options
context:
space:
mode:
authorCody Logan <cody@lokken.dev>2023-10-24 11:00:56 -0700
committerCody Logan <cody@lokken.dev>2023-10-24 11:04:54 -0700
commit93ed73f700e1f6da32418b0188c2a8f8122f1c0d (patch)
tree6a179b38aee4fc6ebc41294fedc2d1f91b4fb0d8 /src/wikiget/logging.py
parent0b700624f79461a0d9f52eeb0370d15f16d49c90 (diff)
downloadwikiget-93ed73f700e1f6da32418b0188c2a8f8122f1c0d.tar.gz
wikiget-93ed73f700e1f6da32418b0188c2a8f8122f1c0d.zip
Use per-module loggers and tweak initial log config
Diffstat (limited to 'src/wikiget/logging.py')
-rw-r--r--src/wikiget/logging.py32
1 files changed, 16 insertions, 16 deletions
diff --git a/src/wikiget/logging.py b/src/wikiget/logging.py
index 290fd1d..425b045 100644
--- a/src/wikiget/logging.py
+++ b/src/wikiget/logging.py
@@ -38,20 +38,20 @@ def configure_logging(verbosity: int, logfile: str, *, quiet: bool) -> None:
# configure logging:
# console log level is set via -v, -vv, and -q options;
# file log level is always debug (TODO: make this user configurable)
- base_format = "%(message)s"
- log_format = "[%(levelname)s] " + base_format
+ console_log_format = "[%(levelname)s] %(message)s"
+ file_log_format = "%(asctime)s [%(levelname)-7s] %(message)s"
+
+ logger = logging.getLogger("") # root logger
+
+ # set up console logging
+ ch = logging.StreamHandler()
+ ch.setLevel(loglevel)
+ ch.setFormatter(logging.Formatter(console_log_format))
+ logger.addHandler(ch)
+
if logfile:
- # log to console and file
- logging.basicConfig(
- level=logging.DEBUG,
- format="%(asctime)s [%(levelname)-7s] " + base_format,
- filename=logfile,
- )
-
- console = logging.StreamHandler()
- console.setLevel(loglevel)
- console.setFormatter(logging.Formatter(log_format))
- logging.getLogger("").addHandler(console)
- else:
- # log only to console
- logging.basicConfig(level=loglevel, format=log_format)
+ # also log to file
+ fh = logging.FileHandler(logfile)
+ fh.setLevel(logging.DEBUG)
+ fh.setFormatter(logging.Formatter(file_log_format))
+ logger.addHandler(fh)