📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.2-7.15

简要来说,当 Elasticsearch 分析器配置了未被识别或未定义的过滤器时,就会出现此错误。这可能是由于过滤器名称拼写错误或过滤器未安装造成的。要解决此问题,您可以检查分析器配置中过滤器名称的拼写。如果拼写正确,请确保过滤器已正确安装在您的 Elasticsearch 实例中并且可用。如果过滤器是自定义的,请确保它们在 Elasticsearch 配置中已正确定义和注册。

日志上下文 #

日志 “analyzer [” + name + “] contains filters " 类名是 NamedAnalyzer.java。我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考:

AnalysisMode filterMode = tokenFilter.getAnalysisMode();
 if (filterMode != AnalysisMode.ALL && filterMode != mode) {
 offendingFilters.add(tokenFilter.name());
 }
 }
 throw new MapperException("analyzer [" + name + "] contains filters " + offendingFilters
 + " that are not allowed to run in " + mode.getReadableName() + " mode.");
 } else {
 throw new MapperException(
 "analyzer [" + name + "] contains components that are not allowed to run in " + mode.getReadableName() + " mode.");
 }