Verwenden von Elastic Search 5.3 Aggregation API - kann keine Abfrage schreiben, die eine Kennzahl für eine Datums-Bucket-Woche-Teilung nach Dimension/Begriff/Feld berechnet. Ich bin in der Lage, die Datums-Buckets zu erstellen und das für diesen Bucket berechnete Measure zu erhalten, aber nicht in der Lage, es durch einen Term zu trennen: sagen Sie, Anwendung oder Begriff sagen Transaktion. Elastic search 5+ Version hat viele APIs von früheren Versionen veraltet. Hier ist, was ich habe - das ist jetzt die Aggregation der Kennzahl über alle Begriffe für diesen Datumsbereich. Muss durch einige Felder/Begriffe getrennt werden. Wie gehe ich vor?Wie kann ich zusätzliche Ausdrücke in der ElasticSearch-Aggregation mit Datetime Buckets hinzufügen?
POST /index_name/_search?size=0
{
"aggs": {
"myname_Summary": {
"date_histogram": {
"field": "@timestamp",
"interval": "week"
, "format": "yyyy-MM-dd"
, "time_zone": "-04:00"
},
"aggs":{ "total_volume" : {"sum": {"field": "volume"}}
}
}
}}
dank @ user3775217 hilft, ist die geteilten Begriffe mir eine separate Liste von doc_counts pro App geben. nicht das Gesamtvolumen. "Aggregationen": {"myname_Summary": {"Buckets": [{"key_as_string": "2017-03-13", "Schlüssel": 1489377600000, "doc_count": 1101400, "total_volume": {"value": 285977085 }, "split": {"doc_count_error_upper_bound": 652, "sum_other_doc_count": 35778, "Eimer": [{"key": "app2", "doc_count": 671680}, {"key": "app1", " doc_count ": 185564} ... – padma
können Sie den JSON so einstellen, wie das Ergebnis aussehen soll? – user3775217
etwas wie folgt aus: "Aggregationen": { "myname_summary": { "Eimer": [{ "key_as_string": "2017.03.13", "Schlüssel": 1489377600000, "doc_count": 1101400, \t [{ "my_app": App1, \t "my_transaction": "txn1" "total_volume": { "Wert": 2859 }}, \t { "my_app": App2, \t " my_transaction ":" txn1 ", " Gesamtvolumen ": { " Wert ": 1857 }}, \t { "my_app": app3, \t "my_transaction": "txn1", "total_volume": { "Wert": 1659 }} } ] } } – padma