L'interrogation Elasticsearch par la combinaison d'une plage et d'un terme de correspondance format json

Je suis en train d'interroger un index Elasticsearch par un intervalle de temps, et de plus, ils ont une durée corresponde à une valeur de chaîne.

J'ai essayé cette requête, ce qui semble assez simple:

 {
  "query" : {
    "bool": {
      "must": [
        {
          "match": {
            "method": "/customer/help"
          }
        },
        {
          "range" : {
            "startTime": {
              "from" : "2015-10-20T13:00-04:00",
              "to" : "2015-10-20T14:00-04:00"
            }
          }
        }
      ]
    }
  }
}

Dans ce cas, je veux que tous les documents dans le cadre de l'intervalle de temps qui ont également une méthode de la valeur de "/customer/help".

Dans mes résultats, je suis l'obtention de résultats qui sont à l'intérieur de la plage de temps, mais je reçois des documents qui ont des valeurs différentes pour le "method" terrain, quand je veux juste les résultats avec "/customer/help" dans ce domaine.

Sont les différentes valeurs pour la "méthode" des valeurs de champ qui ont "client" ou "aide" avec des résultats attendus de la clientèle "/help"? Dans ce cas, le problème est que Elasticsearch est d'analyser le terrain (probablement analyseur Standard si vous n'avez pas spécifié le mapping). Si vous n'envisagez pas d'utiliser l'analyseur pour ce champ dans l'avenir, alors vous pouvez définir des "index" : "not_analyzed de la propriété" pour ce champ.
Les autres valeurs n'ont client/<autre chose> mais ce qui est bizarre, c'est que si je lance une requête séparément où je suis, l'exclusion de la plage, je ne reçois que les résultats de la méthode = "client/aide".
De quoi êtes-vous en passant par la taille des param? Est-ce juste une coïncidence et que vous êtes seulement de voir un sous-ensemble de tous les résultats lors de la coupe de la requête de plage?
Vous devez utiliser un term requête au lieu de match requête si vous êtes à la recherche pour les correspondances exactes pour votre method champ.

OriginalL'auteur smithzo622 | 2015-10-20