PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Elasticsearch abfrage



Huhn Hur Tu
13.05.16, 09:34
Hi,

ich versuche per curl aus einem Elasticsearchserver Daten zu extrahieren.
Das will mir mit einer, aber nicht mit mehreren Einschraenkungen gelingen

Beispiel Suche nache host, value:


curl -XGET 'http://ELKServer:9200/logstash-clientmonitoring*/_search?q=clustername:ClusterEins&pretty=true&fields=host,value'



Gewuenscht sind weitere Einschraenkung nach maincategory, category, ressourcetype.
hier verstehe ich nicht wie ich die da einfach reinbekomme

Gruss Stefan

marce
13.05.16, 09:39
https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html

Ansonsten hilft es manchmal, sich z.B. Plugins wie head zu installieren und dort die Query "grafisch" zusammenzubasteln und sie dann hinterher in den Code zu übernehmen.

Huhn Hur Tu
13.05.16, 11:58
Head war ein guter Ansatz, aber jetzt stecke ich mit der Timereange fest, das ding kann nur ID Range, aber



curl -XGET 'http://ELKServer:9200/logstash-clientmonitoring*/_search?pretty&fields=logdate,host,name,value' -d '
{

"query": {

"bool": {

"must": [

{

"range": {

"@timestamp": {

"gte": "1463049671240",
"lte": "1463136071240"

}

}

},
{

"term": {

"maincategory.raw": "monioring"

}

},
{

"term": {

"category.raw": "memory"

}

}

],
"must_not": [ ],
"should": [ ]

}

},
"from": 0,
"size": 50,
"sort": [ ],
"aggs": { }

}


Kibana loest es mit


"range": {
"@timestamp": {
"from": "1463137058",
"to": "1463050658"
}
}


aber das funzt bei mir nicht

Huhn Hur Tu
19.05.16, 06:35
Es gitb scheinbar unterschiedliche Versionen von Head, diejenige die auf unserem Elsatic Cluster installiert wurde, kann auch date ranges, diejenige die ich von Github habe nicht, Hipster FU

marce
19.05.16, 06:40
von head gibt's eigentlich immer nur eine "vernünftige" Version - die neueste, die mit der entsprechenden ES-Version kompatibel ist.

Welche Abfragen wie funktionieren und welche Ergebnisse wie zurückliefern ist eher der darunter liegenden ES-Version geschuldet -> erst mal schauen, daß auf Test / Entwicklungs-System und auf dem Live-System die gleichen ES-Versionen laufen.

Huhn Hur Tu
09.06.16, 07:01
head hat geholfen, nachdem ich das Plug auf der EL Instanz angesprochen habe, konnte ich auch Zeit Einschraenkungen machen