def get_failed_indicators_and_retry(self):
        """Get failed indicators data from files and try creating them again."""
        __method_name = inspect.currentframe().f_code.co_name
        try:
            total_retry_indicators = 0
            retry_success = 0
            retry_failure = 0
            parent_dir = ShareDirectoryClient.from_connection_string(
                conn_str=CONNECTION_STRING,
                share_name=FAILED_INDICATORS_FILE_SHARE,
                directory_path="",
            )
            failed_indicator_files = self.get_failed_indicator_files(parent_dir)
            if not failed_indicator_files:
                applogger.info(
                    "{}(method={}) : {} : No failed indicators found.".format(
                        LOGS_STARTS_WITH,
                        __method_name,
                        RETRY_FAILED_INDICATORS,
                    )
                )
                return
            file_names_to_query = self.return_file_names_to_query_in_the_current_execution(failed_indicator_files)
            if not file_names_to_query:
                applogger.info(
                    "{}(method={}) : {} : No previously failed indicators found.".format(
                        LOGS_STARTS_WITH,
                        __method_name,
                        RETRY_FAILED_INDICATORS,
                    )
                )
                return
            for file in file_names_to_query:
                failed_indicators = self.get_failed_indicators(file)
                if not failed_indicators:
                    applogger.info(
                        "{}(method={}) : {} : No Failed indicators found in the file-{}.".format(
                            LOGS_STARTS_WITH,
                            __method_name,
                            RETRY_FAILED_INDICATORS,
                            file,
                        )
                    )
                    continue

                result = self.post_failed_indicators(failed_indicators)
                total_retry_indicators += len(failed_indicators)
                retry_success += result["success_count"]
                retry_failure += result["failure_count"]
                self.delete_file_from_file_share(file, parent_dir)
                applogger.info(
                    "{}(method={}) : {} : Successfully deleted the file, filename : {}.".format(
                        LOGS_STARTS_WITH,
                        __method_name,
                        RETRY_FAILED_INDICATORS,
                        file,
                    )
                )
            applogger.info(
                "{}(method={}) : {} : Total collected Failed Indicators : {}, "
                "posted indicators into sentinel: {}, "
                "failed indicators while posting : {}.".format(
                    LOGS_STARTS_WITH,
                    __method_name,
                    RETRY_FAILED_INDICATORS,
                    total_retry_indicators,
                    retry_success,
                    retry_failure,
                )
            )
        except CofenseException:
            raise CofenseException()
        except Exception as error:
            applogger.error(
                "{}(method={}) : {} : Retrying Failed Indicators incurred an error, Error: {}.".format(
                    LOGS_STARTS_WITH,
                    __method_name,
                    RETRY_FAILED_INDICATORS,
                    error,
                )
            )
            raise CofenseException()
Get failed indicators data from files and try creating them again.
Solutions/CofenseTriage/Data Connectors/CofenseTriageDataConnector/RetryFailedIndicators/retry_failed_indicators.py