aboutsummaryrefslogtreecommitdiff
path: root/wikiget
diff options
context:
space:
mode:
authorCody Logan <clpo13@gmail.com>2021-12-07 15:12:41 -0800
committerCody Logan <clpo13@gmail.com>2021-12-07 15:12:41 -0800
commit10268e7a76dfe72063d682e6043891b967cbad39 (patch)
treeb200e1725a730f654662057127cc663e9ca989eb /wikiget
parent3b757513dc68a9f846f2d120c3919fb46a89e979 (diff)
downloadwikiget-10268e7a76dfe72063d682e6043891b967cbad39.tar.gz
wikiget-10268e7a76dfe72063d682e6043891b967cbad39.zip
Different log levels for file and console
Diffstat (limited to 'wikiget')
-rw-r--r--wikiget/wikiget.py24
1 files changed, 21 insertions, 3 deletions
diff --git a/wikiget/wikiget.py b/wikiget/wikiget.py
index 4098e03..6a537ba 100644
--- a/wikiget/wikiget.py
+++ b/wikiget/wikiget.py
@@ -92,19 +92,37 @@ def main():
elif args.quiet:
loglevel = logging.ERROR
- # set up logger
+ # configure logging:
+ # console log level is set via -v, -vv, and -q options
+ # file log level is always info (TODO: add debug option)
if args.logfile:
+ # log to console and file
logging.basicConfig(
level=logging.INFO,
- format="%(asctime)s [%(levelname)s] %(message)s",
+ format="%(asctime)s [%(levelname)-7s] %(message)s",
filename=args.logfile
)
+
+ console = logging.StreamHandler()
+ # TODO: even when loglevel is set to logging.DEBUG,
+ # debug messages aren't printing to console
+ console.setLevel(loglevel)
+ console.setFormatter(
+ logging.Formatter("[%(levelname)s] %(message)s")
+ )
+ logging.getLogger("").addHandler(console)
else:
+ # log only to console
logging.basicConfig(
level=loglevel,
format="[%(levelname)s] %(message)s"
)
+ # log events are appended to the file if it already exists,
+ # so note the start of a new download session
+ logging.info(f"Starting download session using wikiget {wikiget_version}")
+ # logging.info(f"Log level is set to {loglevel}")
+
if args.batch:
# batch download mode
input_file = args.FILE
@@ -131,7 +149,7 @@ def main():
url = url.strip()
# keep track of batch file line numbers for
# debugging/logging purposes
- logging.info(f"Downloading file {line_num} ({url}):")
+ logging.info(f"Downloading '{url}' at line {line_num}:")
download(url, args)
else:
# single download mode