def METHOD_NAME(self):
    logger.info("Reports Manager Thread [Start]")
    while not self.__event.is_set():
        try:
            tpl: Tuple[str, int, Path, int, int, bool, bool, list, list, list] = \
                self.upload_reports_queue.get(False, timeout=0.1)
            workspace_name, command_id, file_path, plugin_id, user_id, ignore_info_bool, dns_resolution, vuln_tag, \
            host_tag, service_tag = tpl
            logger.info(f"Processing raw report {file_path}")
            if file_path.is_file():
                process_report(workspace_name,
                               command_id,
                               file_path,
                               plugin_id,
                               user_id,
                               ignore_info_bool,
                               dns_resolution,
                               vuln_tag,
                               host_tag,
                               service_tag)
            else:
                logger.warning(f"Report file [{file_path}] don't exists",
                               file_path)
        except Empty:
            self.__event.wait(INTERVAL)
        except KeyboardInterrupt:
            logger.info("Keyboard interrupt, stopping report processing thread")
            self.stop()
        except Exception as ex:
            logger.exception(ex)
            continue
    else:
        logger.info("Reports Manager Thread [Stop]")