Fix double logging.

Calling logging.basicConfig creates a stream handler for the root
logger, and then we were adding our own with a different formatter.
Pass the format string to basicConfig so we don't need to add our own
duplicate stream handler.
This commit is contained in:
Dan Albert 2020-10-06 23:31:40 -07:00
parent 1d7f1082ea
commit 6bfb8cf2fd

View File

@ -1,26 +1,22 @@
"""Logging APIs."""
import logging import logging
import os import os
from logging.handlers import RotatingFileHandler from logging.handlers import RotatingFileHandler
def init_logging(version_string): def init_logging(version: str) -> None:
"""Initializes the logging configuration."""
if not os.path.isdir("./logs"): if not os.path.isdir("./logs"):
os.mkdir("logs") os.mkdir("logs")
logging.basicConfig(level="DEBUG") fmt = "%(asctime)s :: %(levelname)s :: %(message)s"
logging.basicConfig(level=logging.DEBUG, format=fmt)
logger = logging.getLogger() logger = logging.getLogger()
formatter = logging.Formatter('%(asctime)s :: %(levelname)s :: %(message)s')
handler = RotatingFileHandler('./logs/liberation.log', 'a', 5000000, 1) handler = RotatingFileHandler('./logs/liberation.log', 'a', 5000000, 1)
handler.setLevel(logging.INFO) handler.setLevel(logging.INFO)
handler.setFormatter(formatter) handler.setFormatter(logging.Formatter(fmt))
stream_handler = logging.StreamHandler()
stream_handler.setLevel(logging.DEBUG)
stream_handler.setFormatter(formatter)
logger.addHandler(stream_handler)
logger.addHandler(handler) logger.addHandler(handler)
logger.info("DCS Liberation {}".format(version_string)) logger.info(f"DCS Liberation {version}")