數據收集規則 (DCR) 是 擷取、轉換和載入類似 ETL 的數據收集程式的一部分,可改善 Azure 監視器的舊版數據收集方法。 此流程會針對所有資料來源使用一般資料擷取策略,以及設定的標準方法,比先前的集合方法更容易管理且可調整。
針對許多監視案例,您不需要瞭解如何建立或指派 DCR。 您只需使用 Azure 入口網站中的指引來啟用和設定資料收集,而 Azure 監視器會為您建立和設定 DCR。 本文提供 DCR 如何運作的詳細資訊,讓您開始手動建立和設定它們,以便自訂資料收集程式。
DCR 型資料收集的特定優點包括:
- 不同資料來源組態的一致方法。
- 在傳送至目的地之前,能夠套用轉換來篩選或修改傳入數據。
- 可調整的組態選項,支援基礎結構即程式碼和 DevOps 程序。
- 在您自己的環境中,Azure 監視器管線的選項可提供高端可擴縮性、分層網路設定,以及定期連線。
檢視 DCR
資料收集規則 (DCR) 會儲存在 Azure 中,因此可以像任何其他 Azure 資源一樣集中部署和管理它們。 這提供一致且集中的方式來定義和自定義不同的資料收集案例。
從 Azure 入口網站的 監視 功能表中,選擇 數據收集規則 選項來檢視您訂閱中的所有 DCR。 不論用來建立 DCR 的方法和 DCR 本身的詳細數據,訂用帳戶中的所有 DCR 都會列在此畫面中。
已取代舊版數據收集方法
DCR 收集程式已取代或正在取代 Azure 監視器中的其他數據收集方法。 下表列出舊版方法及其 DCR 型取代專案。 Azure 監視器中的其他數據收集方法預計將在未來由 DCR 取代。
| 舊方法 | DCR 方法 | 說明 |
|---|---|---|
| Log Analytics 代理程式 | Azure 監視器代理程式 | Azure 監視器代理程式現在可用來監視支援 VM 深入解析 和 容器深入解析的虛擬機(VM)和 Kubernetes 叢集。 |
|
診斷設定 (僅限計量) |
計量匯出 | 診斷設定目前仍用來從 Azure 資源收集資源記錄。 現在可以使用計量匯出來收集平台計量。 |
| 資料收集器 API | 記錄匯入 API | 記錄擷取 API 可用來從任何 REST 用戶端將數據傳送至 Log Analytics 工作區。 它會取代較不安全且功能較低的數據收集器 API。 |
數據收集程式
DCR 支援的資料收集流程提供傳入資料的常見處理路徑。 每個資料收集案例都是在 DCR 中定義。 DCR 會提供 Azure 監視器如何處理其接收資料的指示。 視案例而定,DCR 會指定下列所有或部分:
- 要收集和傳送至 Azure 監視器的資料。
- 傳入數據的架構。
- 存儲前應對數據進行的轉換。
- 應該傳送數據的目的地。
資料收集規則關聯 (DCRA)
在資源與 DCR 之間建立資料收集規則關聯 (DCRA),以啟用特定資料收集案例。 這是多對多關聯性,其中單一 DCR 可以與多個資源相關聯,而單一資源最多可以與 30 個 DCR 相關聯。 這可讓您制定策略,以在具有不同需求的資源集之間持續進行監控。
使用 DCR
建立 DCR 之後,根據資料收集案例,有不同的方法來使用它。 下表列出常見案例,以及在每種情況下用來收集資料的方法。 下面提供了有關每個的更多詳細信息。
| Scenario | 方法 |
|---|---|
| Azure 監視器代理程式 (AMA) | 資料收集規則關聯 (DCRA) |
| 事件中樞 | 資料收集規則關聯 (DCRA) |
| 平臺計量 (預覽) | 資料收集規則關聯 (DCRA) |
| 直接攝取 | 將資料傳送至 Azure 監視器的 API 呼叫中指定的 DCR。 |
| 工作區轉型 DCR | DCR 在建立工作區後立即處於作用中狀態。 |
Scenarios
下列各節說明使用 DCR 在 Azure 監視器中收集資料的常見案例。 它們描述了 DCR 中包含的詳細資訊,其所使用的方法指定要用於該特定案例的 DCR。
Azure 監視器代理程式 (AMA)
Azure 監視器代理程式 (AMA) 可用來從虛擬機器和 Kubernetes 叢集收集資料。 下圖說明在虛擬機器上執行的 AMA 資料收集。 安裝代理程式時,會連線到 Azure 監視器,以擷取與其相關聯的任何 DCR。 在此案例中,DCR 會指定要收集的事件和效能數據。 對於 Kubernetes 叢集,這也包括 Prometheus 指標。 代理程式會使用該資訊來判斷要從計算機收集哪些數據,並傳送至 Azure 監視器。 傳遞資料之後,會執行在 DCR 中指定的任何 轉換, 來篩選和修改資料,然後將資料傳送至指定的工作區和資料表。
如需詳細資訊,請參閱使用 Azure 監視器從虛擬機器用戶端收集資料和啟用 Kubernetes 叢集的監視。
事件中樞 (預覽版)
下圖說明如何直接從事件中樞將資料內嵌至 Log Analytics 工作區。 當事件中樞收到資料時,資料會傳遞至 Azure 監視器,然後轉換並傳送至與其相關聯的任何 DCR 中指定的任何目的地。
如需詳細資訊,請參閱將事件從 Azure 事件中樞內嵌至 Azure 監視器記錄 (預覽版)。
平臺計量 (預覽)
平台計量會自動從 Azure 資源收集,並傳送至 Azure 監視器計量。 下圖顯示使用 DCR 將此資料傳送至 Log Analytics 工作區,以使用記錄查詢進行分析的程式。 這取代了目前使用 診斷設定 來執行此功能的方法。
建立 DCR 時,它會指定應該傳送資料的工作區和資料表。 DCR 也包含一個轉換,可確保資料採用目標資料表的正確格式。 然後,DCR 會與從中收集平台度量的資源相關聯。
如需詳細資訊,請參閱 透過資料收集規則匯出量度 。
直接內嵌
使用直接內嵌時,會指定特定的 DCR 來處理傳入資料。 例如,下圖說明使用日誌擷取 API 的自訂應用程式資料。 每個 API 呼叫都會指定處理其數據的 DCR。 DCR 會了解傳入資料的結構,包括一個轉換,其可確保資料為目標資料表的格式,並指定用來傳送轉換的資料的工作區和資料表。
如需詳細資訊,請參閱 記錄擷取 API 。
工作區轉換 DCR
工作區轉換 DCR 提供不使用 DCR 的資料收集轉換。 它們會直接套用至 Log Analytics 工作區,並在建立時自動啟用。
如需詳細資訊,請參閱 工作區轉換 DCR 。
變化
轉換 是 DCR 中包含的 KQL 查詢 針對收到的每個記錄執行。 它們可讓您先修改傳入數據,再將其儲存在 Azure 監視器中,或傳送至另一個目的地。 您可以篩選掉不必要的資料以減少內嵌成本、移除不應保存在 Log Analytics 工作區中的敏感資料,或格式化資料,以確保其符合其目的地的架構。 轉換也啟用進階案例,例如將數據傳送至多個目的地,或使用其他資訊擴充數據。
Azure 監視器管線
Azure 監視器管線會將資料收集流程延伸至您自己的資料中心。 它會在將遙測資料傳遞至雲端之前,啟用大規模收集和路由。
Azure 監視器管線的特定使用案例如下:
- 延展性。 管線可以處理來自受監視資源的大量磁碟區,這些資源可能受限於其他收集方法,例如 Azure 監視器代理程式。
- 定期連線。 部分環境可能會有不可靠的雲端連線,或可能有無法預期的長時間無連線。 管線可以在本機快取資料,並在還原連線時與雲端同步。
- 分層網路。 在某些環境中,網路已分割,且無法將數據直接傳送至雲端。 管線可用來從受監視的資源收集資料,而不需要雲端存取,並管理在雲端中與 Azure 監視器的連線。
DCR 區域
所有支援 Log Analytics 工作區的公用區域以及 Azure 政府雲和中國雲,都可使用資料收集規則。 目前尚未支援實體隔離斷網雲端。 會建立 DCR 並儲存至特定區域,並備份至相同地理位置內的配對區域。 服務會部署至區域內所有三個可用性區域。 因此,這是一個區域冗餘服務,可以進一步提高可用性。
單一區域資料落地是一項預覽功能,能夠將客戶資料儲存在單一區域中,目前僅適用於亞太地區的東南亞區域 (新加坡),以及巴西地區的巴西南部 (聖保羅州) 區域。 這些區域中預設會啟用單一區域落地。
後續步驟
如需如何使用 DCR 的詳細資訊,請參閱:
- 資料收集規則結構,描述 DCR 的 JSON 結構及用於不同工作流程的不同元素。
- 不同資料收集案例的範例 DCR 的範例資料收集規則 (DCR)。
- 在 Azure 監視器中建立和編輯資料收集規則 (DCR),以適用於不同方法來建立資料收集規則以應對各種資料收集案例。
- 請參閱 Azure 監視器服務限制,了解適用於各個 DCR 的限制。