使用 Azure 中的診斷設定來監視 Azure Cosmos DB 資料
適用於:NoSQL
MongoDB
Cassandra
Gremlin
桌子
Azure 中的診斷設定可用來收集資源記錄。 資源會發出 Azure 資源記錄,並提供該資源作業的豐富、經常性資料。 這些記錄會依要求進行擷取,也稱為「資料平面記錄」。資料平面作業的一些範例包括刪除、插入和 readFeed。 這些記錄的內容會依資源類型而有所不同。
系統會自動收集平台計量和活動記錄,您必須建立診斷設定來收集資源記錄,或將其轉送到 Azure 監視器外部。 您可以開啟 Azure Cosmos DB 帳戶的診斷設定,並將資源記錄傳送至下列來源:
- Log Analytics 工作區
- 傳送至 Log Analytics 的資料可以寫入 Azure 診斷 (舊版) 或資源專屬 (預覽) 資料表
- 事件中樞
- 儲存體帳戶
注意
建議您在資源專屬模式中建立診斷設定 (適用於 API for Table 以外的所有 API),遵循我們透過 REST API 建立診斷設定的指示。 此選項提供額外的成本最佳化,具有可用於處理資料的改良檢視。
必要條件
- 現有的 Azure Cosmos DB 帳戶。
- 如果您有 Azure 訂用帳戶,則請建立新的帳戶。
- 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶。
- 或者,您可以在認可之前免費試用 Azure Cosmos DB。
建立診斷設定
在這裡,我們會逐步解說建立帳戶診斷設定的程序。
注意
目前不支援將導出記錄為類別的計量。
登入 Azure 入口網站。
瀏覽至 Azure Cosmos DB 帳戶。 開啟 [監視] 區段下方的 [診斷設定] 窗格,然後選取 [新增診斷設定] 選項。
重要
如果帳戶中未啟用「全文檢索查詢」功能,則您可能會看到「啟用全文檢索查詢 [...] 以取得更詳細的記錄」提示。 如果您不想要啟用此功能,則可以放心地忽略此警告。 如需詳細資訊,請參閱啟用全文檢索查詢。
在 [診斷設定] 窗格中,使用您慣用的類別來填入表單。 以下包含的是記錄類別的清單。
類別 API 定義 索引鍵內容 DataPlaneRequests 建議用於 API for NoSQL 將後端要求記錄為資料平面作業,即為建立、更新、刪除或擷取帳戶中資料而執行的要求。 Requestcharge
、、statusCode
、clientIPaddress
、partitionID
、resourceTokenPermissionId
resourceTokenPermissionMode
MongoRequests 適用於 MongoDB 的 API 從前端記錄使用者起始的要求,為 Azure Cosmos DB for MongoDB 要求提供服務。 當您啟用此類別時,請務必停用 DataPlaneRequests。 Requestcharge
、 、opCode
、retryCount
piiCommandText
CassandraRequests 適用於 Apache Cassandra 的 API 從前端記錄使用者起始的要求,為 Azure Cosmos DB for Cassandra 要求提供服務。 operationName
、 、requestCharge
piiCommandText
GremlinRequests 適用於 Apache Gremlin 的 API 從前端記錄使用者起始的要求,為 Azure Cosmos DB for Gremlin 要求提供服務。 operationName
、 、requestCharge
、piiCommandText
retriedDueToRateLimiting
QueryRuntimeStatistics 適用於 NoSQL 的 API 下表詳細說明針對 API for NoSQL 帳戶執行的查詢作業。 根據預設,系統會將查詢文字和其參數模糊化,以避免透過要求所提供的全文檢索查詢記錄來記錄個人資料。 databasename
、 、partitionkeyrangeid
querytext
PartitionKeyStatistics 所有 API 藉由表示分割區索引鍵的預估儲存體大小 (KB),記錄邏輯分割區索引鍵的統計資料。 當您針對儲存體誤差進行疑難排解時,此資料表很有用。 只有在下列條件成立時,才會發出這個 PartitionKeyStatistics 記錄:1. 實體分割區中至少有 1% 的文件具有相同的邏輯分割區索引鍵。 2. 在實體分割區的所有索引鍵中,PartitionKeyStatistics 記錄會擷取儲存體大小最大的前三個索引鍵。 如果不符合上述條件,則無法使用分割區索引鍵統計資料。 如果您的帳戶不符合上述條件也沒有關係,這通常表示您沒有邏輯分割區儲存體誤差。 注意:分割區索引鍵的預估大小會使用取樣方法來計算,該方法會假設實體分割區中的文件大小大致相同。 如果文件大小在實體分割區中不是統一的,則預估分割區索引鍵大小可能不正確。 subscriptionId
、 、regionName
、partitionKey
sizeKB
PartitionKeyRUConsumption API for NoSQL 或 API for Apache Gremlin 記錄分割區索引鍵的每秒彙總 RU/秒耗用量。 針對常用資料分割進行疑難排解時,此資料表很有用。 目前,Azure Cosmos DB 僅針對 API for NoSQL 帳戶和點讀取/寫入、查詢和預存程序作業,報告分割區索引鍵。 subscriptionId
、、regionName
、partitionKey
、requestCharge
、partitionKeyRangeId
ControlPlaneRequests 所有 API 記錄有關控制平面作業的詳細資料,其中包括建立帳戶、新增或移除區域、更新帳戶複寫設定等。 operationName
、 、httpstatusCode
、httpMethod
region
TableApiRequests 適用於資料表的 API 從前端記錄使用者起始的要求,為 Azure Cosmos DB for Table 要求提供服務。 operationName
、 、requestCharge
piiCommandText
當您選取類別詳細資料之後,請將記錄傳送至慣用的目的地。 如果您要將記錄傳送至 Log Analytics 工作區,請務必選取 [資源專屬] 作為目的地資料表。
啟用記錄查詢文字的全文檢索查詢
注意
啟用這項功能可能會導致額外的記錄成本,如需定價詳細資料,請造訪 Azure 監視器定價。 建議您在疑難排解之後停用此功能。
Azure Cosmos DB 提供進階記錄,以進行詳細疑難排解。 啟用全文檢索查詢,您可以在 Azure Cosmos DB 帳戶內檢視所有要求的去模糊化查詢。 您也會授與 Azure Cosmos DB 存取權,以在您的記錄中存取和呈現此資料。
查詢資料
若要了解如何使用這些新啟用的功能進行查詢,請參閱:
下一步
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應