【问题标题】:"reason" : "[match] malformed query, expected [END_OBJECT] but found [FIELD_NAME]"“原因”:“[匹配] 格式错误的查询,应为 [END_OBJECT],但找到 [FIELD_NAME]”
【发布时间】:2021-07-14 12:46:03
【问题描述】:
GET my-index/_search
{
  "query": {
    
    "match": {
      "service.name": "myservice"
    },
  "exists": {"field": "metrics.notification.delayed"}}
}

当我执行上述查询时,我发现 "reason" : "[match] 格式错误的查询,预期为 [END_OBJECT] 但找到了 [FIELD_NAME]"。 基本上,我想要具有 "metrics.notification.delayed" 字段并且字段:值匹配 "service.name":"myservice" 的文档。谁能帮我解决这个问题??

【问题讨论】:

    标签: elasticsearch kibana


    【解决方案1】:

    由于您使用了多个查询,即matchexists,您需要使用boolean query 将它们组合起来,如下所示,

    GET my-index/_search
    {
      "query": {
        "bool": {
          "must": [
            {
              "match": {
                "service.name": "myservice"
              }
            },
            {
              "exists": {
                "field": "metrics.notification.delayed"
              }
            }
          ]
        }
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-10
      • 2018-04-25
      • 2021-04-22
      • 2020-02-26
      • 1970-01-01
      • 2018-01-30
      • 2022-10-25
      • 2022-01-14
      相关资源
      最近更新 更多