2014-10-17 48 views
0

我用的NodeJS 'Azure的存儲' 模塊(版本:0.3.3)的NodeJS Azure存儲Blob服務:getStats不工作

我想獲得有關Azure存儲Blob服務的全球統計數據。

當然,我不會查詢所有斑點來手動計算使用的存儲總量。

所以我認爲使用blobService.getServiceStats可以幫助我。但是這個方法返回一個錯誤。

this.blobService.getServiceStats(function(error, result) { 
    if (error) { 
    console.info(error); 
    } else { 
    console.info(result); 
    } 
}); 

這導致以下錯誤:

{ [Error: Value for one of the query parameters specifie 
RequestId:51b156a6-0001-002d-765f-b4ebd5000000 
Time:2014-10-17T12:40:59.1246311Z] 
    code: 'InvalidQueryParameterValue', 
    queryparametername: 'comp', 
    queryparametervalue: 'stats', 
    reason: '', 
    statusCode: 400, 
    requestId: '51b156a6-0001-002d-765f-b4ebd5000000' } 

這個查詢參數 '補償=統計' 似乎是由SDK本身設置:blobservice.js line 156

有什麼不對?你認爲我應該開一個問題here

你知道一個(工作)的方式來獲得全局blob統計信息嗎?

關於

回答

3

我認爲你誤解了這個操作的目的。此操作會告訴您關於您的blob存儲帳戶的關於Geo Replication Status的信息,而不是您爲blob存儲佔用多少空間。從獲取服務統計的REST API文檔上:http://msdn.microsoft.com/en-us/library/azure/dn495326.aspx

的獲取Blob服務統計操作檢索相關的Blob服務 複製統計信息。 僅當爲存儲帳戶啓用了讀訪問地理冗餘複製 時,它纔可用於 輔助位置端點。

如果您有興趣計算blob存儲的存儲容量,那麼您希望在存儲帳戶上啓用存儲分析。啓用存儲分析後,您可以查詢$MetricsCapacityBlob表以查找blob存儲大小。你可以在這裏閱讀更多關於這張表:http://msdn.microsoft.com/en-us/library/azure/hh343264.aspx

現在就來說明您遇到此錯誤的原因,因爲只能在存儲帳戶的secondary geo-location url [youraccountname]-secondary.blob.core.windows.net上調用此操作。我的猜測是,你只需要使用基本上試圖在primary storage url [youraccountname].blob.core.windows.net上執行此操作的標準設置。

+0

非常感謝您的詳細解答,我會接受它。 (分析:另一種支付方式?^^) – boly38 2014-10-17 13:36:11

+0

「分析:另一種支付方式」是什麼意思? – 2014-10-17 15:32:32