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

版本: 6.8-7.15

简而言之,当 Elasticsearch 无法根据查询中提供的名称定位聚合时,就会出现此错误。这可能是由于聚合名称拼写错误或聚合未在索引中定义造成的。要解决此问题,首先应该验证查询中的聚合名称是否正确。如果名称正确,请检查聚合是否已在索引中定义。如果尚未定义,则需要先定义它。此外,请确保您尝试聚合的字段未被分析(analyzed),因为 Elasticsearch 不支持对已分析的字段进行聚合操作。

日志上下文 #

日志 “Cannot find an aggregation named [” + aggName + “] in [” 的类名是 InternalMultiBucketAggregation.java。我们为那些需要深入了解上下文的人员从 Elasticsearch 源代码中提取了以下内容:

}
 return getKey();
 }
 InternalAggregation aggregation = aggregations.get(aggName);
 if (aggregation == null) {
 throw new InvalidAggregationPathException("Cannot find an aggregation named [" + aggName + "] in [" + containingAggName
 + "]");
 }
 return aggregation.getProperty(path.subList(1; path.size()));
 }
 }