elasticsearch 为什么最小匹配不返回多个匹配?,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch 为什么最小匹配不返回多个匹配?,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch 为什么最小匹配不返回多个匹配?

elasticsearch 为什么最小匹配不返回多个匹配?,elasticsearch,kibana,elasticsearch,Kibana,我指的是这个问题 当尝试将其扩展为3匹配,最小应匹配数为2时,当我将其设置为“minimum\u should\u Match”:1时,它不返回任何值,但只给出1个匹配值,但当我喜欢此“minimum\u should\u Match”:2时,它不返回任何值,据我所知,查询应在日志中找到至少2个匹配项 那么我做错了什么 GET _search { "query":{ "bool":{ "must":[ {

我指的是这个问题 当尝试将其扩展为3匹配,最小应匹配数为2时,当我将其设置为“minimum\u should\u Match”:1时,它不返回任何值,但只给出1个匹配值,但当我喜欢此“minimum\u should\u Match”:2时,它不返回任何值,据我所知,查询应在日志中找到至少2个匹配项

那么我做错了什么

    GET _search 
   { 
   "query":{ 
      "bool":{ 
         "must":[ 
            { 
               "match":{ 
                  "log.file.path":"mylog.log"
               }
            },
            { 
               "term":{ 
                  "GPS-LOG.IMEI":{ 
                     "value":"1234567"
                  }
               }
            },
            { 
               "bool":{ 
                  "should":[ 
                     { 
                        "term":{ 
                           "GPS-LOG.COMMAND":{ 
                              "value":"HB"
                           }
                        }
                     },
                      term":{ 
                           "GPS-LOG.COMMAND":{ 
                              "value":"DB"
                           }
                        }
                     },
                     { 
                        "term":{ 
                           "GPS-LOG.COMMAND":{ 
                              "value":"TR"
                           }
                        }
                     }
                  ],
                  "minimum_should_match":1
               }
            }
         ],
         "filter":{ 
            "range":{ 
               "@timestamp":{ 
                  "gte":"now-10m"
               }
            }
         }
      }
   }
}

请告诉我您对参数
的最低要求是什么?您的意思是应该至少有N个文档与查询的术语相匹配,或者在每个匹配的文档中应该至少有N个匹配的术语?嗨,如果我在该日志文件上执行正常的grep,即grep DB | TR | HB,它将返回与那些keyworkd匹配的所有行,对于相同的规则,它唯一的返回行,只匹配一个关键字,我需要返回至少2个关键字匹配,希望它使SENETHAKS的答复。
应该
零件在我看来很不错(应该可以满足您的需要)。因此,我假设问题出在查询的不同部分,或者是文档本身的接收中。请检查上面的
必须
部分是否限制太多(尝试删除它,看看会发生什么)。此外,我还建议您仔细查看并检查日志和索引中的数据是否完全相同(我的意思是,查询丢失的内容将导致找不到任何内容)。另外,请查看
过滤器
部分,因为它按时间戳减少了文档。您好,感谢过滤时间很好,我已经在那个时候检查,日志与这些关键字是存在的,我也改变了从必须到应该,但仍然是一样的。。。