Ich suche durch Protokolle mit Platzhaltern auf mehrere Felder, diese Platzhalter Abfragen sind in einer Klasse sollte jedes Protokoll neben den Feldern, die ich mit Platzhaltern suchen, hat eine "action_id" -Feld, ich Ich möchte nur die Protokolle zurückgeben, die mit einem oder mehreren Platzhaltern übereinstimmen, und mindestens eine der action_ids haben, die ich haben möchte (im Beispiel A oder B).Elastische Suche, mit sollte innerhalb sollte
Was nicht funktioniert:
q={
"size" : 20,
"sort" : [
{ "clsfd_id" : {"order" : "asc"}},
],
"fields":
"query":{
"filtered":{
"query":{
"match_all":{
}
},
"filter":{
"bool":{
"should":[
{
"query":{
"term":{
"id":"*12*"
}
}} #gets filled dynamically with wildcard queries
],
"should":[
{"query":{
"term":{
"action_id":"A"
}
}
},
{"query":{
"term":{
"action_id":"B"
}
}
},
]
}
}
}
}
}
Beispiel doc:
{
"_index": "logs",
"_type": "log",
"_id": "AVdPQBuRkYFjD-WA9CiE",
"_score": null,
"_source": {
"username": "Ιδιώτης",
"user_id": null,
"action_on": "Part",
"ip": "sensitive info",
"idents": [
"sensiti",
"sensitive info"
],
"time": "2016-09-21T19:18:11.184576",
"id": 5993765,
"changes": "bla bla bla",
"action_id": "A"
}
* Dies ist Elastic 1.7 durch die Art und Weise
können Sie ein Beispiel doc? – jay
@jay, schau es dir an – SteveL