def get_value_and_input_into_ecs_dict()

in source/lambda/es_loader/siem/__init__.py [0:0]


    def get_value_and_input_into_ecs_dict(self, ecs_dict):
        new_ecs_dict = {}
        ecs_keys = self.logconfig['ecs']
        for ecs_key in ecs_keys:
            original_keys = self.logconfig[ecs_key]
            if isinstance(original_keys, str):
                v = utils.value_from_nesteddict_by_dottedkeylist(
                    self.__logdata_dict, original_keys)
                if isinstance(v, str):
                    v = utils.validate_ip(v, ecs_key)
                if v:
                    new_ecs_dict = utils.put_value_into_nesteddict(ecs_key, v)
            elif isinstance(original_keys, list):
                temp_list = []
                for original_key_list in original_keys:
                    v = utils.value_from_nesteddict_by_dottedkeylist(
                        self.__logdata_dict, original_key_list)
                    if isinstance(v, str):
                        v = utils.validate_ip(v, ecs_key)
                        if v:
                            temp_list.append(v)
                    elif isinstance(v, list):
                        for i in v:
                            each_v = utils.validate_ip(i, ecs_key)
                            if each_v:
                                temp_list.append(each_v)
                if temp_list:
                    new_ecs_dict = utils.put_value_into_nesteddict(
                        ecs_key, sorted(list(set(temp_list))))
            if new_ecs_dict:
                new_ecs_dict = utils.merge_dicts(ecs_dict, new_ecs_dict)
        return ecs_dict