2017-04-21 6 views
3

J'exécute cette requête sur AWS Elasticsearch 5.1 et j'obtiens une erreur de requête mal formée. Voici le corps de la requête. Je vérifie simplement si le champ existe pendant la période.Requête mal formée, pas d'objet start_object après le nom de la requête

{ 
    "query": { 
    "bool": { 
     "filter": { 
     "bool": { 
      "must": [ 
      { 
       "range": { 
       "@timestamp": { 
        "gt": "2017-03-21T15:37:08.595919Z", 
        "lte": "2017-04-21T15:52:08.595919Z" 
       } 
       } 
      }, 
      { 
       "query": [ 
       { 
        "query_string": { 
        "query": "_exists_: $event.supplier" 
        } 
       } 
       ] 
      } 
      ] 
     } 
     } 
    } 
    }, 
    "sort": [ 
    { 
     "@timestamp": { 
     "order": "asc" 
     } 
    } 
    ] 
} 

Répondre

4

La deuxième déclaration must était incorrect:

{ 
    "query": { 
    "bool": { 
     "filter": { 
     "bool": { 
      "must": [ 
      { 
       "range": { 
       "@timestamp": { 
        "gt": "2017-03-21T15:37:08.595919Z", 
        "lte": "2017-04-21T15:52:08.595919Z" 
       } 
       } 
      }, 
      { 
       "query_string": { 
       "query": "_exists_: $event.supplier" 
       } 
      } 
      ] 
     } 
     } 
    } 
    }, 
    "sort": [ 
    { 
     "@timestamp": { 
     "order": "asc" 
     } 
    } 
    ] 
}