code: def get_logger():
      """Get the AutoDist logger instance."""
      global _logger
      if _logger:
          return _logger
      _logger_lock.acquire()
  
      try:
          if _logger:
              return _logger
          logger = _logging.getLogger("autodist")
          # If this attribute evaluates to true,
          # events logged to this logger will be passed to the handlers of higher level (ancestor) loggers,
          # in addition to any handlers attached to this logger.
          logger.propagate = False
          logger.findCaller = _logger_find_caller
          formatter = _logging.Formatter(default_log_format)
          # create file handler
          file_handler = _logging.FileHandler(log_file_path)
          file_handler.setFormatter(formatter)
          logger.addHandler(file_handler)
          # by default _sys.stderr
          stream_handler = _logging.StreamHandler()
          stream_handler.setFormatter(formatter)
          logger.addHandler(stream_handler)
  
          _logger = logger
          return _logger
      finally:
          _logger_lock.release()
  
file_path: autodist/autodist/utils/logging.py
imports: import datetime
  import logging
  import os
  import sys
  import threading
  import traceback
  import autodist.const
label_desc: Use image node_id 2 for calling a global function with example usage: get_logger() and returns: _logger, _logger, _logger