2017-07-05 17 views
0

私の目的は、メッセージIDと一致する最新の10のドキュメントをMSG-1013として検索し、重大度フィールドが情報でなければなりません。両方の条件が満たされ、テキストが正確に一致する必要があります。私は以下の検索クエリで試してみましたが、期待通りの結果を得られません。私はここで間違って何をしていますか?弾性検索boolクエリ

{ 
    "size": 10, 
    "query": { 
     "bool": { 
      "must": [ 
       { 
        "match": { "messageId": "MSG-1013" } 
       }, 
       { 
        "match": { "Severity": "Info" } 
       } 
      ] 
     } 
    } 
} 

答えて

0

私が正しくあなたを理解している場合は、正確にフィールド「のmessageId」と「重要度」を有するトップ10(最近の)文書を見つけたいです。スコアは文書のタイムスタンプや日付フィールドのようなものなので、スコアは必要ありません。この目的のために、ソートクエリと組み合わせてboolフィルタを使用することができます。

{ 
    "query": { 
     "bool": { 
      "filter": [ 
       { "term": { "messageId": "MSG-1013" } }, 
       { "term": { "Severity": "Info" } } 
      ] 
     } 
    }, 
    "sort" : [ 
     { "documentTimestamp" : {"order" : "desc"}} 
    ], 
    "size": 10 
} 
+0

ありがとうございました。それは正常に働いた。 – user2822012