簡體   English   中英

哪種 Azure 指標聚合類型返回十進制值?

[英]Which Azure metrics aggregation type returns decimal values?

我正在使用 Azure 指標來評估我的 Azure 資源的健康程度,方法是收集資源的每個指標的默認聚合類型。 我可以看到 SDK 的 Microsoft.Azure.Management.Monitor.Fluent.Models 命名空間中的 MetricValue 類將為所有聚合類型返回 double 類型的值。

namespace Microsoft.Azure.Management.Monitor.Fluent.Models
{
    public class MetricValue
    {
        public MetricValue();
        public MetricValue(DateTime timeStamp, double? average = null, double? minimum = null, double? maximum = null, double? total = null, double? count = null);

        public DateTime TimeStamp { get; set; }
        public double? Average { get; set; }
        public double? Minimum { get; set; }
        public double? Maximum { get; set; }
        public double? Total { get; set; }
        public double? Count { get; set; }
        public virtual void Validate();
    }
}

我的問題是(考慮到雙重數據類型),所有服務的所有 Azure 指標實際上都有機會返回十進制值嗎? 我可以看到服務總線指標中的消息計數有時會返回十進制值。 我沒有找到與我的問題相關的特定文檔來澄清。 謝謝。

因為 metric 可以是任何東西,而 MetricValue 是一種通用的通用類型/模式,它需要滿足各種指標,有些需要盡可能高的精度、非常高或非常低的值(+ve 或 -ve),並且還需要保留在底層通用數據存儲(例如 Azure Monitor)。 現在,雖然某些指標可能是整數,具體取決於上下文中的單位(例如,當您說我的請求花費了 300 毫秒時),但有些可能不是(例如,有 20.57 GB 可用磁盤空間)。 請記住,除了內置的 Azure 指標外,您的應用程序還可以自定義指標,這些指標可能是想象中的任何東西。 因此,為了容納足夠高的精度可能, double是選擇。 這解釋了平均值、最小值、最大值、總計。 但是為什么 Count 也是double ,我不完全確定,但最有可能容納一個超高的數字,以防萬一,我們不會因 int 或 long 而筋疲力盡。 或者它可能是一個時間窗口內的計數,可以是十進制(每分鍾 10.6 個請求)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM