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

版本: 7.4-8.9

简而言之,当Elasticsearch无法在给定索引或文档中找到指定的聚合键时,就会出现此错误。这可能是由于聚合名称拼写错误,或者指定的索引中可能不存在该聚合。要解决此问题,您可以验证聚合名称并确保它存在于指定的索引中。如果聚合不存在,您可能需要创建它。此外,还要确保查询的是正确的索引。

日志上下文 #

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

if (bucket.getKeyAsString().equals(aggName.substring(1; aggName.length() - 1))) {
 return bucket.getProperty(name; path.subList(1; path.size()));
 }
 }
 // No key match; time to give up
 throw new InvalidAggregationPathException("Cannot find an key [" + aggName + "] in [" + name + "]");
 }  Object[] propertyArray = new Object[buckets.size()];
 for (int i = 0; i < buckets.size(); i++) {
 propertyArray[i] = buckets.get(i).getProperty(name; path);