Initial commit
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# tools/weather_logger.py
|
||||
|
||||
import logging
|
||||
import logging.handlers
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def set_up_logger():
|
||||
logger = logging.getLogger()
|
||||
|
||||
if logger.hasHandlers():
|
||||
return
|
||||
|
||||
logger.setLevel(logging.DEBUG)
|
||||
logging.getLogger("PIL").setLevel(logging.WARNING)
|
||||
formatter = logging.Formatter(
|
||||
"{asctime} - {levelname:>7}: {message}", "%y-%m-%d %H:%M:%S", style="{"
|
||||
)
|
||||
log_dir = Path(__file__).parent.parent.joinpath("logs")
|
||||
log_dir.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
debugFileHandler = logging.handlers.RotatingFileHandler(
|
||||
filename=log_dir.joinpath("debug.log"),
|
||||
maxBytes=1_048_576,
|
||||
backupCount=5,
|
||||
)
|
||||
debugFileHandler.setFormatter(formatter)
|
||||
debugFileHandler.setLevel(logging.DEBUG)
|
||||
|
||||
infoFileHandler = logging.handlers.RotatingFileHandler(
|
||||
filename=log_dir.joinpath("info.log"),
|
||||
maxBytes=1_048_576,
|
||||
backupCount=3,
|
||||
)
|
||||
infoFileHandler.setFormatter(formatter)
|
||||
infoFileHandler.setLevel(logging.INFO)
|
||||
|
||||
console = logging.StreamHandler()
|
||||
console.setFormatter(formatter)
|
||||
console.setLevel(logging.INFO)
|
||||
|
||||
logger.addHandler(debugFileHandler)
|
||||
logger.addHandler(infoFileHandler)
|
||||
logger.addHandler(console)
|
||||
Reference in New Issue
Block a user