(self, dir_name: str)
Creates the CheckDefinition instance by looking up all ids from the integration directory.
        Note: Does not populate log_source_name and is_defined_in_web_ui as they can't be retrieved
        from the integration folder.
        :param dir_name: The integration directory in the integrations-core repository
Creates the CheckDefinition instance by looking up all ids from the integration directory.
        Note: Does not populate log_source_name and is_defined_in_web_ui as they can't be retrieved
        from the integration folder.
        :param dir_name: The integration directory in the integrations-core repository
Creates the CheckDefinition instance by looking up all ids from the integration directory . Note : Does not populate log_source_name and is_defined_in_web_ui as they can t be retrieved from the integration folder . : param dir_name : The integration directory in the integrations - core repository
def __init__(self, dir_name: str) -> None:
        """
        Creates the CheckDefinition instance by looking up all ids from the integration directory.
        Note: Does not populate log_source_name and is_defined_in_web_ui as they can't be retrieved
        from the integration folder.
        :param dir_name: The integration directory in the integrations-core repository
        """
        self.dir_name = dir_name

        with open(os.path.join(INTEGRATIONS_CORE, dir_name, "manifest.json"), 'r') as manifest:
            content = json.load(manifest)
            # name of the integration
            self.name: str = content['name']
            # boolean: whether or not the integration supports log collection
            self.log_collection: bool = 'log collection' in content['categories']
            # boolean: whether or not the integration has public facing docs
            self.is_public: bool = content['is_public']
            # Log source defined in the manifest.json of the integration
            self.log_source: Optional[str] = content.get("assets", {}).get("logs", {}).get("source")

        # Whether or not this check has a log to metrics mapping defined in web-ui
        self.is_defined_in_web_ui: bool = False

        # All the log sources defined in the README (in theory only one or zero). Useful to alert if multiple sources
        # are defined in the README or if documentation is missing.
        self.source_names_readme: List[str] = self.get_log_sources_in_readme()
def __init__ ( self , dir_name : str ) -> None : self . dir_name = dir_name with open ( os . path . join ( INTEGRATIONS_CORE , dir_name , "manifest.json" ) , 'r' ) as manifest : content = json . load ( manifest ) # name of the integration self . name : str = content [ 'name' ] # boolean: whether or not the integration supports log collection self . log_collection : bool = 'log collection' in content [ 'categories' ] # boolean: whether or not the integration has public facing docs self . is_public : bool = content [ 'is_public' ] # Log source defined in the manifest.json of the integration self . log_source : Optional [ str ] = content . get ( "assets" , { } ) . get ( "logs" , { } ) . get ( "source" ) # Whether or not this check has a log to metrics mapping defined in web-ui self . is_defined_in_web_ui : bool = False # All the log sources defined in the README (in theory only one or zero). Useful to alert if multiple sources # are defined in the README or if documentation is missing. self . source_names_readme : List [ str ] = self . get_log_sources_in_readme ( )