Source code for fitbit_downloader.logger
import datetime
import logging
import sys
from pathlib import Path
from typing import Final
LOG_FOLDER: Final[Path] = Path(__file__).parent / "Logs"
if not LOG_FOLDER.exists():
LOG_FOLDER.mkdir(parents=True)
def _get_log_path(folder: Path = LOG_FOLDER) -> Path:
current_time = datetime.datetime.now().replace(microsecond=0)
current_time_str = str(current_time).replace(":", "-")
return folder / f"{current_time_str}.log"
[docs]def add_file_handler():
fh = logging.FileHandler(_get_log_path())
fh.setLevel(logging.INFO)
fh.setFormatter(formatter)
logger.addHandler(fh)
logger = logging.getLogger("fitbit-downloader")
logger.setLevel(logging.INFO)
formatter = logging.Formatter("%(asctime)s %(levelname)s: %(message)s")
ch = logging.StreamHandler(stream=sys.stdout)
ch.setLevel(logging.DEBUG)
ch.setFormatter(formatter)
logger.addHandler(ch)