def METHOD_NAME(exception_handler=None,  # pylint: disable=too-many-arguments
                      formatters=None, filters=None, handlers=None, loggers=None, config=None, variables=None):
    urllib3.disable_warnings()
    warnings.filterwarnings(action="ignore", message="unclosed", category=ResourceWarning)
    if exception_handler:
        sys.excepthook = exception_handler
    if formatters is None:
        formatters = {
            'default': {
                '()': MultilineMessagesFormatter,
                'format': '< t:%(asctime)s f:%(filename)-15s l:%(lineno)-4s c:%(name)-20s p:%(levelname)-5s > %(message)s'
            },
        }
    if filters is None:
        filters = {
            'filter_remote': {
                '()': FilterRemote
            }
        }
    if handlers is None:
        handlers = {
            'console': {
                'level': 'INFO',
                'formatter': 'default',
                'class': 'logging.StreamHandler',
                'stream': 'ext://sys.stdout',  # Default is stderr
                'filters': ['filter_remote']
            },
            'outfile': {
                'level': 'DEBUG',
                'class': 'logging.FileHandler',
                'filename': '{log_dir}/sct.log',
                'mode': 'a',
                'formatter': 'default',
            },
            'argus': {
                'level': 'DEBUG',
                'class': 'logging.FileHandler',
                'filename': '{log_dir}/argus.log',
                'mode': 'a',
                'formatter': 'default',
            }
        }
    if loggers is None:
        loggers = {
            '': {  # root logger
                'handlers': ['console', 'outfile'],
                'level': 'DEBUG',
                'propagate': True
            },
            'botocore': {
                'level': 'CRITICAL'
            },
            'boto3': {
                'level': 'CRITICAL'
            },
            's3transfer': {
                'level': 'CRITICAL'
            },
            'multiprocessing': {
                'level': 'DEBUG',
                'propagate': True,
            },
            'paramiko.transport': {
                'level': 'CRITICAL'
            },
            'cassandra.connection': {
                'level': 'INFO'
            },
            'invoke': {
                'level': 'CRITICAL'
            },
            'anyconfig': {
                'level': 'ERROR'
            },
            'urllib3.connectionpool': {
                'level': 'INFO'
            },
            'selenium.webdriver.remote.remote_connection': {
                'level': 'INFO'
            },
            'argus': {
                'handlers': ['argus'],
                'level': 'DEBUG',
                'propagate': False
            },
            'sdcm.argus_test_run': {
                'handlers': ['argus'],
                'level': 'DEBUG',
                'propagate': False
            },
        }
    if config is None:
        config = {
            'version': 1,
            'disable_existing_loggers': False,
            'formatters': formatters,
            'filters': filters,
            'handlers': handlers,
            'loggers': loggers
        }
    logging.config.dictConfig(replace_vars(config, variables))