2012-03-16 53 views
2

我一直在尋找支持以下要求的開源統計服務器:開源stat服務器?

  • 本地代理聚集每秒100S的統計信息,和發送這些統計出到中央集羣(或單個服務器)每10秒或者。應用程序將阻止網絡對代理的調用,以便在代碼中進行統計,而不是寫出到磁盤,並讓另一個進程來讀取日誌。
  • 中央服務器響應請求REALTIME(次秒級響應)中的聚合的查詢(每5分鐘間隔,小時,天,月,年的統計數據)。可選:支持滾動時間窗口(例如,從現在起1小時)
  • 標記每個統計指標。每個統計名稱將具有不同的屬性,例如此統計來自的主機名稱。
  • 單調遞增的統計(統計增加永遠,即總數)

我的理解是相當簡單寫每天自己(表,基於策略彙總較低粒度表,然後把它們每TTL ,可以在NOSQL上完成,例如,在時間桶上的redis上的hashsets),但是我們驚訝的是,鑑於它是一個標準的用例,沒有一個可用的。 OpenTSDB是一個非常接近的候選人(不提供本地代理),但不支持單調遞增的統計數據。

任何建議或指針?

回答

1

看看statsd,這是一個非常酷的項目,或多或少地做你想要的。您的應用程序會將UDP數據包發送到中央節點(您要說明您希望實際發送的樣本百分比以避免超載,我們使用大約10%),並且中央服務器會聚合標記的數據。然後它使用Graphite生成實際的報告。

https://github.com/etsy/statsd