File size: 944 Bytes
36fab63 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | from pathlib import Path
import logging.config
import json
root_directory = Path(__file__).resolve().parents[3]
logging_configuration_file = root_directory / "config.json"
log_dir = root_directory / "logs"
log_dir.mkdir(parents=True, exist_ok=True)
def configure_logging():
try:
with open(file=logging_configuration_file) as f:
log_config = json.load(fp=f)
logging.config.dictConfig(config=log_config)
except FileNotFoundError:
raise FileNotFoundError(f"Logging configuration file not found: {logging_configuration_file}")
except PermissionError:
raise PermissionError(f"Permission denied to access logging configuration file: {logging_configuration_file}")
except json.JSONDecodeError:
raise ValueError(f"Invalid JSON in logging configuration file: {logging_configuration_file}")
except Exception as e:
raise ValueError(f"Error while loading logging configuration file: {e}") |