如何使用包含子字符串的字段过滤文档

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用包含子字符串的字段过滤文档相关的知识,希望对你有一定的参考价值。

我有一个包含以下字段的文档:

  "data": 
    "type": "text",
    "fields": 
      "keyword": 
        "type": "keyword",
        "ignore_above": 256
      
    

并且在对kibana进行查询时,我希望过滤所有具有sendMessageFromAgent之类的子字符串的文档。我不想执行查询,我想过滤它们。

该字段的示例如下:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Header/><S:Body><ns2:sendMessageFromAgent xmlns:ns2="http://blahblah/"><ns2:session><ns2:id>a-session-id</ns2:id></ns2:session><ns2:userId><ns2:id>624962268835</ns2:id></ns2:userId><ns2:messages><ns2:message><ns2:text>we have some text here</ns2:text><ns2:sentTimeMillis>1288851099000</ns2:sentTimeMillis></ns2:message></ns2:messages></ns2:sendMessageFromAgent></S:Body></S:Envelope>

我尝试将以下DSL查询作为新的kibana过滤器放置,但未返回任何内容:


  "wildcard": 
    "data": "*sendMessageFromAgent*"
  

答案
"match": "data": "operator": "AND", "query": "sendMessageFromAgent <other-strings-if-needed>"

这将在data字段上执行全文搜索

以上是关于如何使用包含子字符串的字段过滤文档的主要内容,如果未能解决你的问题,请参考以下文章

如何猫鼬列表() - 按子文档字段值过滤值

如何使用C#在数组mongoDB中获取子文档

如何匹配 MongoDB 中的子文档数组?

如何匹配MongoDB中的子文档数组?

Django,如何使用过滤器检查字符串字段是不是是参数的子字符串?

使用子字符串作为条件过滤子文档数组