版本: 6.8-7.15
简而言之,当Elasticsearch在查询中遇到未知的键时,就会出现此错误。这通常是由于查询中存在拼写错误,或者您正在使用的功能在您使用的Elasticsearch版本中不存在造成的。要解决此问题,您可以检查查询是否存在拼写错误或语法不正确。如果查询正确,您可能需要将Elasticsearch版本升级到支持您尝试使用的功能的版本。
日志上下文 #
日志"Unknown key for a " + token + " in [“的类名是 SearchSourceBuilder.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用:
if (SCRIPT_FIELD.match(currentFieldName, parser.getDeprecationHandler())) {
script = Script.parse(parser);
} else if (IGNORE_FAILURE_FIELD.match(currentFieldName, parser.getDeprecationHandler())) {
ignoreFailure = parser.booleanValue();
} else {
throw new ParsingException(parser.getTokenLocation(), "Unknown key for a " + token + " in [" + currentFieldName
+ "].", parser.getTokenLocation());
}
} else if (token == XContentParser.Token.START_OBJECT) {
if (SCRIPT_FIELD.match(currentFieldName, parser.getDeprecationHandler())) {
script = Script.parse(parser);





