--- title: "未知的键" date: 2026-02-09 lastmod: 2026-02-09 description: "Elasticsearch配置或查询中出现无法识别的键导致的错误及解决方案" tags: ["Elasticsearch", "配置", "查询键", "语法错误"] summary: " 版本: 6.8-7.15 简而言之,当Elasticsearch配置或查询中存在无法识别或不正确的键时,就会出现此错误。这可能是由于拼写错误、语法不正确,或使用了当前Elasticsearch版本中不存在的键造成的。要解决此问题,首先,检查配置或查询中是否存在任何拼写错误或语法错误。如果这不起作用,请确保您使用的键对您的Elasticsearch版本有效。最后,检查Elasticsearch文档以确保键的使用正确。 日志上下文 # 日志"Unknown key for a"的类名是 FetchSourceContext.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: ListincludesList = new ArrayList<>(); while ((token = parser.nextToken()) != XContentParser.Token.END_ARRAY) { if (token == XContentParser.Token.VALUE_STRING) { includesList.add(parser.text()); } else { throw new ParsingException(parser.getTokenLocation(), "Unknown key for a " + token + " in [" + currentFieldName + "].", parser.getTokenLocation()); } } includes = includesList.toArray(new String[includesList.size()]); } else if (EXCLUDES_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { " --- > **版本:** 6.8-7.15 简而言之,当Elasticsearch配置或查询中存在无法识别或不正确的键时,就会出现此错误。这可能是由于拼写错误、语法不正确,或使用了当前Elasticsearch版本中不存在的键造成的。要解决此问题,首先,检查配置或查询中是否存在任何拼写错误或语法错误。如果这不起作用,请确保您使用的键对您的Elasticsearch版本有效。最后,检查Elasticsearch文档以确保键的使用正确。 ## 日志上下文 日志"Unknown key for a"的类名是[FetchSourceContext.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: ```java ListincludesList = new ArrayList<>(); while ((token = parser.nextToken()) != XContentParser.Token.END_ARRAY) { if (token == XContentParser.Token.VALUE_STRING) { includesList.add(parser.text()); } else { throw new ParsingException(parser.getTokenLocation(), "Unknown key for a " + token + " in [" + currentFieldName + "].", parser.getTokenLocation()); } } includes = includesList.toArray(new String[includesList.size()]); } else if (EXCLUDES_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { ```