You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kmftools/energie/logger.py

42 lines
1.1 KiB

import logging
import os
from dotenv import load_dotenv
# Laad .env bestand
load_dotenv()
def setup_logger():
"""Stelt de logger in op basis van de configuratie in de .env bestand."""
log_level = os.getenv("LOG_LEVEL", "INFO").upper(
) # Standaard naar INFO als het niet is ingesteld
# Maak de logger aan
logger = logging.getLogger()
# Zet het logniveau op basis van de waarde uit de .env
log_levels = {
"DEBUG": logging.DEBUG,
"INFO": logging.INFO,
"WARNING": logging.WARNING,
"ERROR": logging.ERROR,
"CRITICAL": logging.CRITICAL
}
# Gebruik het juiste logniveau
# Standaard naar INFO als het onbekend is
logger.setLevel(log_levels.get(log_level, logging.INFO))
# Maak een console handler
ch = logging.StreamHandler()
ch.setLevel(log_levels.get(log_level, logging.INFO))
# Maak een formatter
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
ch.setFormatter(formatter)
# Voeg de handler toe aan de logger
logger.addHandler(ch)
return logger