code: def get_logger(name=__name__) -> logging.Logger:
      """Initializes multi-GPU-friendly python logger."""
  
      logger = logging.getLogger(name)
  
      # this ensures all logging levels get marked with the rank zero decorator
      # otherwise logs would get multiplied for each GPU process in multi-GPU setup
      for level in (
          "debug",
          "info",
          "warning",
          "error",
          "exception",
          "fatal",
          "critical",
      ):
          setattr(logger, level, rank_zero_only(getattr(logger, level)))
  
      return logger
  
file_path: zoo/src/utils/utils.py
imports: import logging
  import warnings
  from typing import List, Sequence
  import pytorch_lightning
  import rich.syntax
  import rich.tree
  from omegaconf import DictConfig, OmegaConf
  from pytorch_lightning.utilities import rank_zero_only
label_desc: Use image node_id 1 for calling a global function with example usage: get_logger(name) and returns: logger