私は動く集約を取得して自分のアプリケーションで稼動させようとしています。移動集計ElasticSearch
以下は、私のドキュメントのメトリクスの例です。
"_index" : "metrics-2017-06-23",
"_type" : "metric",
"_id" : "AVzUTWSCHd9DG10LCpmo",
"_score" : 0.0,
"_source" : {
"organisation" : "Organisation",
"deployments" : [
{
"deployment_name" : "tqwerty",
"instances" : [
{
"instance_name" : "7962c130ae1247229ee67aa534172f77",
"object" : "fff",
"version" : "adacb76ebd21",
"cpu" : [
{
"time" : 1498174600,
"value" : 10000
}
],
"disk_read" : [
{
"time" : 1498174600,
"value" : 430
}
],
"disk_write" : [
{
"time" : 1498174600,
"value" : 0
}
],
"net_read" : [
{
"time" : 1498174600,
"value" : 0
}
],
"net_write" : [
{
"time" : 1498174600,
"value" : 0
}
]
}
]
}
]
}
}
]
IveはCurlの要求をどこまで受け取り、私が望む展開を分離しています。しかし、ちょうど私の移動aggを示していない。私はなぜドキュメンテーションの言葉に従っているのかわからない。
curl -XPOST '10.0.0.34:9200/_search?pretty' -H 'Content-Type: application/json' -d'
{
"size": 20,
"query": {
"bool": {
"must": [
{ "match": { "organisation": "Organisation" }},
{ "match": { "deployments.deployment_name": "tqwerty" }}
]
}
},
"aggs": {
"my_date_histo":{
"date_histogram":{
"field":"deployments.instances.cpu.time",
"interval":"30s"
},
"aggs":{
"the_sum":{
"sum":{ "field": "deployments.instances.cpu.value" }
},
"the_movavg":{
"moving_avg":{ "buckets_path": "the_sum" }
}
}
}
}
}
'
Curlリクエストはうまく実行されますが、移動すると表示されませんが、移動すると合計が表示されますが、データとよく一致します。
ありがとう、
クエリによさそうだ、ここに示されているHTTPSよう窓、モデルのような他のパラメータを追加してみてください:// www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-pipeline-movavg-aggregation.html – tom
また、サイズを試してみてください:すべてのデータをフェッチするには、サイズがあります:20が理由です。 – tom