2016-06-06 116 views
0

我需要顯示基於Kibana的報告,該報告將基於多個日期間隔彙總結果。時間與時間戳一起被映射爲浮點數據類型。Kibana:報告不同的日期間隔,例如今天,昨天,上週

例子:

Jobs, Yesterday, Last Week, Last Quarters 
Job 1, 5hr,  10 hr,  60 hr 

什麼是ES和Kibana做到這一點的最好方法是什麼?

+0

你嘗試過什麼嗎?一個指導性的建議是創建一個圖表(任何類型的),並根據您最喜歡的桶大小指定一個「日期範圍」聚合。 – pickypg

+0

我嘗試使用日期範圍聚合,但無法找到任何關閉解決方案來生成上述表示。 – rayhan

回答

1

既然你想讓它顯示爲:

工作N |範圍1 |範圍2 |範圍3 | ... |區域N

這可能是難以真正得到Kibana正是因爲它喜歡如何分割的數據表,但它是最好知道如何得到的東西之前,你甚至嘗試對其進行可視化:

{ 
    "size" : 0, 
    "aggs" : { 
    "per_job": { 
     "terms": { 
     "field": "job", 
     "size": 10 
     }, 
     "aggs": { 
     "ranges": { 
      "date_range": { 
      "field": "timestamp", 
      "ranges": [ 
       { 
       "from": "now-1d/d" 
       }, 
       { 
       "from" : "now-7d/d" 
       }, 
       { 
       "from": "now-3M/M" 
       } 
      ] 
      }, 
      "aggs": { 
      "worked": { 
       "sum": { 
       "field": "hours" 
       } 
      } 
      } 
     } 
     } 
    } 
    } 
} 

這是什麼提供?這是按每個job進行分組,然後將每個作業分成三個分段日期範圍,每個日期範圍都是前一個範圍的較長版本(請注意,沒有指定"to",您可以將其指定爲"to" : "now"),然後每個日期範圍的分割總計爲感興趣的領域,我認爲它被命名爲小時。

如何在基巴納使用這個?那麼,Kibana只是一個可視化工具來建立這些聚合和圖表或以其他方式顯示它們。

頂級聚合因此將是Terms聚合。次要或「分組」將是Date Range,最後是metric(在buckets之上)將是Sum

不幸的是,因爲你似乎想它的一個表視圖,沒有辦法,我知道的,以獲得不同的日期範圍,只需添加另一行除非您接受每個作業的一個表:

Example Configuration

+1

您的解決方案適用於ES,我可以通過這種方式獲取數據表單ES。但在基巴納,這種表現並不是我所需要的。 – rayhan

+0

請隨時通過http://github.com/elastic/kibana創建問題並描述您希望發生的事情(鼓勵模型)。 – pickypg

相關問題