code: def _logging_setup(verbosity=1, logfile=None):
      logger = logging.getLogger()
      log_level = (2 - verbosity) * 10
      fmt = "%(asctime)s - %(process)d - %(levelname)s - %(module)s - %(message)s"
      formatter = logging.Formatter(fmt)
      logger.setLevel(log_level)
      logger.propagate = False
  
      if logfile:
          file_handler = logging.FileHandler(logfile)
          file_handler.setLevel(logging.DEBUG)
          file_handler.setFormatter(formatter)
          logger.addHandler(file_handler)
  
      else:
          console_handler = logging.StreamHandler()
          console_handler.setLevel(log_level)
          console_handler.setFormatter(formatter)
          logger.addHandler(console_handler)
  
imports: import argparse
  import logging
  import multiprocessing
  import os
  import time
  import psutil
  from daemon import DaemonContext
  from lockfile.pidlockfile import PIDLockFile
  from atm.api import create_app
  from atm.config import AWSConfig, DatasetConfig, LogConfig, RunConfig, SQLConfig
  from atm.core import ATM
  from atm.data import copy_files, download_demo, get_demos
label_desc: Use image node_id 16 for calling a global function with example usage: _logging_setup(verbosity, logfile) without return types