Instantiates loggers from config. :param logger_cfg: A DictConfig object containing logger configurations. :return: A list of instantiated loggers.
(logger_cfg: DictConfig)
| 36 | |
| 37 | |
| 38 | def instantiate_loggers(logger_cfg: DictConfig) -> List[Logger]: |
| 39 | """Instantiates loggers from config. |
| 40 | |
| 41 | :param logger_cfg: A DictConfig object containing logger configurations. |
| 42 | :return: A list of instantiated loggers. |
| 43 | """ |
| 44 | logger: List[Logger] = [] |
| 45 | |
| 46 | if not logger_cfg: |
| 47 | log.warning("No logger configs found! Skipping...") |
| 48 | return logger |
| 49 | |
| 50 | if not isinstance(logger_cfg, DictConfig): |
| 51 | raise TypeError("Logger config must be a DictConfig!") |
| 52 | |
| 53 | for _, lg_conf in logger_cfg.items(): |
| 54 | if isinstance(lg_conf, DictConfig) and "_target_" in lg_conf: |
| 55 | log.info(f"Instantiating logger <{lg_conf._target_}>") |
| 56 | logger.append(hydra.utils.instantiate(lg_conf)) |
| 57 | |
| 58 | return logger |