2

我在 elasticsearch.yml 中配置了我的全局自定义分析器,这是我的配置:

index :
analysis :
    analyzer :
        titleAnalyzer :
            type : custom
            tokenizer : ik_max_word
            filter : [titleSynoymFilter, englishStemmerFilter]
    filter :
        titleSynoymFilter :
            type : synonym
            synonyms_path : ../analysis/title_synonym.txt
        englishStemmerFilter :
            type : stemmer
            name : english

然后我通过运行命令测试我的分析器$ echo 'A drop in the ocean'| http :5600/_analyze?analyzer=titleAnalyzer

但是elasticsearch告诉我它找不到分析器:

{
"error": {
    "reason": "failed to find analyzer [titleAnalyzer]",
    "root_cause": [
        {
            "reason": "[elastisearch][127.0.0.1:9300][indices:admin/analyze[s]]",
            "type": "remote_transport_exception"
        }
    ],
    "type": "illegal_argument_exception"
},
"status": 400
}
4

1 回答 1

10

如果您/_analyze在根路径上调用未找到分析器,请尝试在路径上指定至少一个现有索引

$ echo 'A drop in the ocean'| http :5600/some_index/_analyze?analyzer=titleAnalyzer
                                              ^
                                              |
                                      add an index here
于 2016-05-04T13:32:45.180 回答