.net Wasabi block for Azure scaling多久收集一次数据?
我仔细检查了一下芥末自动校准块。有一个.net Wasabi block for Azure scaling多久收集一次数据?,.net,windows,azure,scaling,wasabi,.net,Windows,Azure,Scaling,Wasabi,我仔细检查了一下芥末自动校准块。有一个Tailspin\u TenantCount\u Avg\u 10m规则在tenantCounterAndElement类中实现,该类反过来提供了一个tenantCountDataPoints采集器类实例来收集数据 后者有 public IEnumerable<DataPoint> Collect(DateTimeOffset collectionTime) public IEnumerable Collect(DateTimeOffset c
Tailspin\u TenantCount\u Avg\u 10m
规则在tenantCounterAndElement
类中实现,该类反过来提供了一个tenantCountDataPoints采集器
类实例来收集数据
后者有
public IEnumerable<DataPoint> Collect(DateTimeOffset collectionTime)
public IEnumerable Collect(DateTimeOffset collectionTime)
方法,该方法执行度量数据的实际检索。该方法由Wasabi块调用
该方法多久调用一次?Collect方法的调用周期,即Wasabi调用IDataPointsCollector的时间,由数据收集器上的SamplingRate属性控制 当操作数创建IDataPointsCollector时,该间隔最终由操作数传递。在XML中指定的操作数元素始终可以应用timespan属性。例如,我可以使用simething-like以更短的时间跨度定义上面列出的操作数
<rules ...>
...
<operands>
<tenantCountOperand alias="Tailspin_TenantCount_Avg_2m" timespan="00:2:00"
aggregate="Average" xmlns="http://Tailspin/TenantCount" />
</operands>
</rules>
...
编写自定义操作数时,由您指定希望调用Collect方法的频率。Wasabi将为此检查IDataPointsCollection.SamplingRate属性(由收集器实现)
这可能是开发人员所拥有的知识(因为他更清楚何时可以收集新数据),但是您也可以让这个参数在XML中指定(尽管我不建议在生产中使用)
您甚至可以根据聚合函数中使用的时间跨度来推导此采样率,因此,例如,如果操作数对最近2小时的数据进行平均,则每2分钟对数据进行一次采样可能是一种过度操作。timespan看起来像是对数据进行平均的时间段,而不是采样时间段。