Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
async def create_initial_threads(self):
kwargs = self.kwargs
if "threads" in kwargs:
self.logger.warning(
"Threads directive is deprecated apps - will be pinned. Use total_threads if you want to unpin your apps")
if "total_threads" in kwargs:
self.total_threads = kwargs["total_threads"]
self.auto_pin = False
else:
apps = await self.AD.app_management.check_config(True, False)
self.total_threads = int(apps["active"])
self.pin_apps = True
utils.process_arg(self, "pin_apps", kwargs)
if self.pin_apps is True:
self.pin_threads = self.total_threads
else:
self.auto_pin = False
self.pin_threads = 0
if "total_threads" not in kwargs:
self.total_threads = 10
utils.process_arg(self, "pin_threads", kwargs, int=True)
if self.pin_threads > self.total_threads:
raise ValueError("pin_threads cannot be > total_threads")
if self.pin_threads < 0:
raise ValueError("pin_threads cannot be < 0")
utils.process_arg(self, "admin_delay", kwargs, int=True)
self.max_utility_skew = self.utility_delay * 2
utils.process_arg(self, "max_utility_skew", kwargs, float=True)
self.check_app_updates_profile = False
utils.process_arg(self, "check_app_updates_profile", kwargs)
self.production_mode = False
utils.process_arg(self, "production_mode", kwargs)
self.invalid_yaml_warnings = True
utils.process_arg(self, "invalid_yaml_warnings", kwargs)
self.missing_app_warnings = True
utils.process_arg(self, "missing_app_warnings", kwargs)
self.log_thread_actions = False
utils.process_arg(self, "log_thread_actions", kwargs)
self.qsize_warning_threshold = 50
utils.process_arg(self, "qsize_warning_threshold", kwargs, int=True)
self.qsize_warning_step = 60
utils.process_arg(self, "qsize_warning_step", kwargs, int=True)
self.qsize_warning_iterations = 10
utils.process_arg(self, "qsize_warning_iterations", kwargs, int=True)
self.internal_function_timeout = 10
utils.process_arg(self, "internal_function_timeout", kwargs, int=True)
utils.process_arg(self, "longitude", kwargs)
self.elevation = None
utils.process_arg(self, "elevation", kwargs)
self.time_zone = None
utils.process_arg(self, "time_zone", kwargs)
self.tz = None
self.loop = loop
self.logfile = None
self.errfile = None
self.config_file = None
utils.process_arg(self, "config_file", kwargs)
self.config_dir = None
utils.process_arg(self, "config_dir", kwargs)
self.timewarp = 1
utils.process_arg(self, "timewarp", kwargs, float=True)
self.max_clock_skew = 1
utils.process_arg(self, "max_clock_skew", kwargs, int=True)
self.thread_duration_warning_threshold = 10
utils.process_arg(self, "thread_duration_warning_threshold", kwargs, float=True)
self.threadpool_workers = 10
utils.process_arg(self, "threadpool_workers", kwargs, int=True)
self.loop = loop
self.logfile = None
self.errfile = None
self.config_file = None
utils.process_arg(self, "config_file", kwargs)
self.config_dir = None
utils.process_arg(self, "config_dir", kwargs)
self.timewarp = 1
utils.process_arg(self, "timewarp", kwargs, float=True)
self.max_clock_skew = 1
utils.process_arg(self, "max_clock_skew", kwargs, int=True)
self.thread_duration_warning_threshold = 10
utils.process_arg(self, "thread_duration_warning_threshold", kwargs, float=True)
self.threadpool_workers = 10
utils.process_arg(self, "threadpool_workers", kwargs, int=True)
self.endtime = None
utils.process_arg(self, "endtime", kwargs)
self.loglevel = "INFO"
utils.process_arg(self, "loglevel", kwargs)
self.api_port = None
utils.process_arg(self, "api_port", kwargs)
# User Supplied/Defaults
self.load_distribution = "roundrobbin"
utils.process_arg(self, "load_distribution", kwargs)
self.app_dir = None
utils.process_arg(self, "app_dir", kwargs)
self.starttime = None
utils.process_arg(self, "starttime", kwargs)
self.latitude = None
utils.process_arg(self, "latitude", kwargs)
self.longitude = None
utils.process_arg(self, "longitude", kwargs)
self.elevation = None
utils.process_arg(self, "elevation", kwargs)
self.time_zone = None
utils.process_arg(self, "time_zone", kwargs)
self.tz = None
self.loop = loop
self.logfile = None
self.errfile = None
self.config_file = None
utils.process_arg(self, "config_file", kwargs)
utils.process_arg(self, "invalid_yaml_warnings", kwargs)
self.missing_app_warnings = True
utils.process_arg(self, "missing_app_warnings", kwargs)
self.log_thread_actions = False
utils.process_arg(self, "log_thread_actions", kwargs)
self.qsize_warning_threshold = 50
utils.process_arg(self, "qsize_warning_threshold", kwargs, int=True)
self.qsize_warning_step = 60
utils.process_arg(self, "qsize_warning_step", kwargs, int=True)
self.qsize_warning_iterations = 10
utils.process_arg(self, "qsize_warning_iterations", kwargs, int=True)
self.internal_function_timeout = 10
utils.process_arg(self, "internal_function_timeout", kwargs, int=True)
self.namespaces = {}
utils.process_arg(self, "namespaces", kwargs)
self.exclude_dirs = ["__pycache__"]
if "exclude_dirs" in kwargs:
self.exclude_dirs += kwargs["exclude_dirs"]
self.stop_function = None
utils.process_arg(self, "stop_function", kwargs)
if not kwargs.get("cert_verify", True):
self.certpath = False
utils.process_arg(self, "production_mode", kwargs)
self.invalid_yaml_warnings = True
utils.process_arg(self, "invalid_yaml_warnings", kwargs)
self.missing_app_warnings = True
utils.process_arg(self, "missing_app_warnings", kwargs)
self.log_thread_actions = False
utils.process_arg(self, "log_thread_actions", kwargs)
self.qsize_warning_threshold = 50
utils.process_arg(self, "qsize_warning_threshold", kwargs, int=True)
self.qsize_warning_step = 60
utils.process_arg(self, "qsize_warning_step", kwargs, int=True)
self.qsize_warning_iterations = 10
utils.process_arg(self, "qsize_warning_iterations", kwargs, int=True)
self.internal_function_timeout = 10
utils.process_arg(self, "internal_function_timeout", kwargs, int=True)
self.namespaces = {}
utils.process_arg(self, "namespaces", kwargs)
self.exclude_dirs = ["__pycache__"]
if "exclude_dirs" in kwargs:
self.exclude_dirs += kwargs["exclude_dirs"]
self.stop_function = None
utils.process_arg(self, "stop_function", kwargs)
utils.process_arg(self, "elevation", kwargs)
self.time_zone = None
utils.process_arg(self, "time_zone", kwargs)
self.tz = None
self.loop = loop
self.logfile = None
self.errfile = None
self.config_file = None
utils.process_arg(self, "config_file", kwargs)
self.config_dir = None
utils.process_arg(self, "config_dir", kwargs)
self.timewarp = 1
utils.process_arg(self, "timewarp", kwargs, float=True)
self.max_clock_skew = 1
utils.process_arg(self, "max_clock_skew", kwargs, int=True)
self.thread_duration_warning_threshold = 10
utils.process_arg(self, "thread_duration_warning_threshold", kwargs, float=True)
self.threadpool_workers = 10
utils.process_arg(self, "threadpool_workers", kwargs, int=True)
self.endtime = None
utils.process_arg(self, "endtime", kwargs)
self.errfile = None
self.config_file = None
utils.process_arg(self, "config_file", kwargs)
self.config_dir = None
utils.process_arg(self, "config_dir", kwargs)
self.timewarp = 1
utils.process_arg(self, "timewarp", kwargs, float=True)
self.max_clock_skew = 1
utils.process_arg(self, "max_clock_skew", kwargs, int=True)
self.thread_duration_warning_threshold = 10
utils.process_arg(self, "thread_duration_warning_threshold", kwargs, float=True)
self.threadpool_workers = 10
utils.process_arg(self, "threadpool_workers", kwargs, int=True)
self.endtime = None
utils.process_arg(self, "endtime", kwargs)
self.loglevel = "INFO"
utils.process_arg(self, "loglevel", kwargs)
self.api_port = None
utils.process_arg(self, "api_port", kwargs)
self.utility_delay = 1
utils.process_arg(self, "utility_delay", kwargs, int=True)
utils.process_arg(self, "max_clock_skew", kwargs, int=True)
self.thread_duration_warning_threshold = 10
utils.process_arg(self, "thread_duration_warning_threshold", kwargs, float=True)
self.threadpool_workers = 10
utils.process_arg(self, "threadpool_workers", kwargs, int=True)
self.endtime = None
utils.process_arg(self, "endtime", kwargs)
self.loglevel = "INFO"
utils.process_arg(self, "loglevel", kwargs)
self.api_port = None
utils.process_arg(self, "api_port", kwargs)
self.utility_delay = 1
utils.process_arg(self, "utility_delay", kwargs, int=True)
self.admin_delay = 1
utils.process_arg(self, "admin_delay", kwargs, int=True)
self.max_utility_skew = self.utility_delay * 2
utils.process_arg(self, "max_utility_skew", kwargs, float=True)
self.check_app_updates_profile = False
utils.process_arg(self, "check_app_updates_profile", kwargs)
self.production_mode = False
utils.process_arg(self, "production_mode", kwargs)