2012-01-26 67 views
1

我仔細查看了Tailspin Surveys sample的Wasabi自動調節功能塊。在TenantCountOperandElement類中實現了Tailspin_TenantCount_Avg_10m規則,該規則又提供用於收集數據的TenantCountDataPointsCollector類實例。用於Azure縮放的Wasabi塊多久收集一次數據?

後者具有

public IEnumerable<DataPoint> Collect(DateTimeOffset collectionTime) 

方法,做度量數據的實際檢索。該方法由Wasabi塊調用。

該方法調用的頻率如何?

回答

2

在編寫自定義操作數時,您指定了希望Collect方法被調用的頻率。 Wasabi將檢查IDataPointsCollection.SamplingRate配件(由收集器執行)。

這可能是開發人員所擁有的知識(因爲他知道什麼時候可以收集新的數據),但是您也可以讓該參數在XML中明確指定(儘管我不會推薦它在生產中)。

您甚至可以根據聚合函數中使用的時間範圍推導出此採樣率,例如,如果操作數確實是最後2小時數據的平均值,那麼對數據進行採樣可能會矯枉過正每2分鐘一班。

0

收集方法,即,當山葵將調用通過對IDataPointsCollector,通過在數據收集器的SamplingRate屬性約束的調用期間。

該間隔最終通過由操作數傳遞時,它創建IDataPointsCollector操作數您在XML中指定的元素始終可以應用時間範圍屬性。因此,例如,我可以使用類似simething來定義上面列出的操作數,並使用更短的時間間隔。

<rules ...> 
    ... 
    <operands> 
    <tenantCountOperand alias="Tailspin_TenantCount_Avg_2m" timespan="00:2:00" 
     aggregate="Average" xmlns="http://Tailspin/TenantCount" /> 
    </operands> 
</rules> 
+1

時間跨度看起來像數據被平均的時間段,而不是採樣時間段。 – sharptooth