File size: 573 Bytes
4f5dba9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from logging import basicConfig, getLogger
from os import environ, getenv

from ..settings import LogSettings


def setup_log(settings: LogSettings | None = None):
    _settings: LogSettings = settings or LogSettings()
    basicConfig(**_settings.config)
    for mod, level in _settings.SUPPRESS_MODULES:
        getLogger(mod).setLevel(level or _settings.SUPPRESS_LEVEL)


def setup_envvars(*envs: dict[str, str]) -> None:
    for env in envs:
        for env_key, env_value in env.items():
            if not getenv(env_key):
                environ[env_key] = env_value