選擇正確的警示規則類型

本文說明您可以建立的 Azure 監視器警示類型。 這可協助您了解何時使用每種警示類型。 如需定價的詳細資訊,請參閱定價頁面

警示的類型如下:

Azure 監視器警示類型

警示類型 使用時機 定價資訊
計量警示 計量資料會儲存在預先計算過的系統中。 當您想要收到哪些資料需要少量操作或不需要操作的相關警示時,計量警示會很有用。 如果計量資料中有您想要監視的資料,請使用計量警示。 每個計量警示規則都會根據受監視的時間序列數收費。
記錄搜尋警示 您可以使用記錄搜尋警示,對資料執行進階邏輯作業。 如果記錄中有您想要監視的資料,或該資料需要進階邏輯,您可以使用 Kusto 查詢語言 (KQL) 的強大功能,使用記錄搜尋警示來操作資料。 每個記錄搜尋警示規則都會根據評估記錄查詢的間隔來計費。 較頻繁的查詢評估會產生較高的成本。 此外,對於專為大規模監視設定且使用依維度分割的記錄警示,成本也取決於隨查詢所致維度所建立的時間序列數。
活動記錄警示 活動記錄提供資源上發生的所有動作的稽核。 當資源發生特定事件 (例如重新開機、關機,建立資源或刪除資源) 時,請使用活動記錄警示。 服務健康情況警示和資源健康狀態警示會在某項服務或資源發生問題時通知您。 如需詳細資訊,請參閱價格網頁
Prometheus 警示 Prometheus 警示的用途是針對在適用於 Prometheus 的 Azure 監視器受管理服務中儲存的 Prometheus 計量發出警示。 警示規則是以 PromQL 開放原始碼查詢語言為基礎。 Prometheus 警示規則只會針對規則所查詢的資料收費。 如需詳細資訊,請參閱價格網頁

計量警示 \(部分機器翻譯\)

計量警示規則會定期評估資源計量的條件,以監視資源。 如果符合條件,即會引發警示。 計量時間序列是一段時間內所擷取的一系列計量值。

您可以使用下列計量來建立規則:

計量警示規則包括下列功能:

計量警示規則的目標可以是:

將多個條件套用至計量警示規則

當您為單一資源建立警示規則時,可以套用多個條件。 例如,您可以建立監視 Azure 虛擬機器的警示規則,並在「CPU 百分比大於 90%」且「佇列長度超過 300 個項目」時發出警示。 當警示規則有多個條件時,系統會在警示規則中的所有條件都為 true 時引發警示,並在連續三次檢查中至少有一個條件不再為 true 時解除警示。

使用維度縮小目標範圍

如需在計量警示規則中使用維度的指示,請參閱在單一計量警示規則中監視多個時間序列

使用「依維度分割」來監視多個資源的相同條件

您可以使用 [依維度分割] 來監視多個 Azure 資源上的相同條件。 使用「依維度分割」時,您可以針對訂用帳戶或資源群組,大規模地建立以資源為中心的警示。 警示會將各種組合分組以分割成個別的警示。 在 Azure 資源識別碼資料行上進行分割會使指定的資源成為警示目標。

您想對範圍中的多個資源套用一項條件時,您也可以決定不要分割。 例如,您想在資源群組範圍中至少有五部電腦的 CPU 使用量超過 80% 時,發出警示。

使用一個警示規則監視多個資源

您可以針對存在於相同 Azure 區域中的資源,將相同計量警示規則套用至相同類型的多個資源,以大規模監視。 系統會針對每個受監視的資源傳送個別通知。

下列 Azure 雲端支援這些服務的平台計量:

服務 資源提供者 全球 Azure 政府 中國
虛擬機器 “Microsoft.Compute/virtualMachines” Yes .是 Yes
SQL Server 資料庫 “Microsoft.Sql/servers/databases” Yes .是 Yes
SQL Server 彈性集區 “Microsoft.Sql/servers/elasticpools” Yes .是 Yes
NetApp Files 容量集區 “Microsoft.NetApp/netAppAccounts/capacityPools” Yes .是 Yes
NetApp Files 磁碟區 “Microsoft.NetApp/netAppAccounts/capacityPools/volumes” Yes .是 Yes
Azure Key Vault “Microsoft.KeyVault/vaults” Yes .是 Yes
Azure Cache for Redis “Microsoft.Cache/redis” Yes .是 Yes
Azure Stack Edge 裝置 (此資源沒有特定的資源提供者。由於 Stack Edge 裝置的運作方式, 計量會從數個資源提供者擷取。如需有關此資源警示的詳細資訊,請參閱此文件: 檢閱 Azure Stack Edge 上的警示) Yes .是 Yes
復原服務保存庫 “Microsoft.RecoveryServices/Vaults” No
適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器 “Microsoft.DBforPostgreSQL/flexibleServers” Yes .是 Yes
裸機機器 (運算子連接點) “Microsoft.NetworkCloud/bareMetalMachines” Yes .是 Yes
儲存設備 (運算子連接點) “Microsoft.NetworkCloud/storageAppliances” Yes .是 Yes
叢集 (運算子連接點) “Microsoft.NetworkCloud/clusters” Yes .是 Yes
網路裝置 (運算子連接點) Microsoft.NetworkCloud/l2Networks、Microsoft.NetworkCloud/l3Networks Yes .是 Yes
資料收集規則 “Microsoft.Insights/datacollectionrules” Yes .是

注意

不支援的多個資源計量警示:

  • 對 VM 客體計量發出警示。
  • 對 VM 網路計量發出警示 (網路輸入量總計、網路輸出量總計、輸入流量、輸出流量、輸入流量最大建立速率和輸出流量最大建立速率)。

您可以透過下列三種方式之一,指定單一計量警示規則所監視的範圍。 例如,使用 VM 時,您可以將範圍指定為:

  • 訂用帳戶內一個 Azure 區域中的 VM 清單。
  • 在訂用帳戶的一或多個資源群組中,一個 Azure 區域中的所有 VM。
  • 訂用帳戶中一個 Azure 區域中的所有 VM。

使用動態閾值套用進階機器學習

動態閾值會使用進階機器學習來執行下列作業:

  • 了解計量的歷程記錄。
  • 識別模式並適應一段時間的計量變更,例如每小時、每日或每週模式。
  • 辨識可能表示服務有問題的異常情況。
  • 計算最適合計量的閾值。

機器學習會持續使用新的資料來深入學習,並讓閾值更精確。 因為系統會隨著時間適應計量的行為,並根據其模式的偏差發出警示,所以您不需要知道每個計量的「正確」閾值。

動態閾值有助於:

  • 使用一個警示規則,為數百個計量序列建立可調整的警示。 如果您的警示規則不多,則建立和管理警示規則所需的時間就會較短。
  • 建立規則,而不需要知道要設定哪種閾值。
  • 使用高階概念來設定計量警示,而不需大量的計量領域相關知識。
  • 避免不具預期模式的雜訊 (低精確度) 或廣泛 (低召回率) 閾值。
  • 處理雜訊計量 (例如電腦 CPU 或記憶體) 以及具有低離散程度的計量 (例如可用性和錯誤率)。

如需如何在計量警示規則中使用動態閾值的詳細指示,請參閱動態閾值

記錄搜尋警示

記錄搜尋警示會使用 Log Analytics 查詢來監視資源,以依設定頻率評估資源記錄。 如果符合條件,即會引發警示。 您可以使用 Log Analytics 查詢,因此可對資料執行進階邏輯作業,並使用強健的 KQL 功能來操作記錄資料。

記錄搜尋警示規則的目標可以是:

  • 單一資源,例如 VM。
  • 資源的單一容器,例如資源群組或訂用帳戶。
  • 使用跨資源查詢的多個資源。

記錄搜尋警示可以測量下列兩種不同項目,並可用於不同的監視案例:

  • 資料列數:傳回的資料列數目可用於處理 Windows 事件記錄、syslog 和應用程式例外狀況等事件。
  • 計算數值資料行:您可使用任一數值資料行的計算,包含任意數目的資源。 例如 CPU 百分比。

您可以將記錄搜尋警示設為具狀態或無狀態。 此功能目前為預覽功能。 請注意,具狀態記錄搜尋警示具有下列限制:

  • 每個評估最多可以觸發 300 個警示。
  • fired 警示條件最多可搭配 5000 個警示。

注意

當您嘗試偵測記錄中的特定資料時,記錄搜尋警示效果最好,而不是嘗試偵測記錄中的缺漏資料。 由於記錄是半結構化資料,所以相較於 VM 活動訊號等資訊的計量資料,其本質上更加隱蔽。 若要避免嘗試偵測記錄中的缺漏資料時誤發警示,請考慮使用計量警示。 您可以使用記錄的計量警示,將資料從記錄傳送至計量存放區。

使用維度監視資源的多個執行個體

您可以在建立記錄搜尋警示規則時使用維度,透過一個規則來監視資源的多個執行個體值。 例如,您可以在執行網站或應用程式的多個執行個體上監視 CPU 使用量。 每個執行個體都會個別受到監視。 每個執行個體都會傳送通知。

使用「依維度分割」來監視多個資源的相同條件

您可以使用 [依維度分割] 來監視多個 Azure 資源上的相同條件。 使用「依維度分割」時,您可以針對訂用帳戶或資源群組,大規模地建立以資源為中心的警示。 警示會使用數值或字串資料行將各種組合分組,以分割成個別的警示。 分割 Azure 資源識別碼資料行會使指定的資源成為警示目標。

您想對範圍中的多個資源套用一項條件時,您也可以決定不要分割。 例如,您想在資源群組範圍中至少有五部電腦的 CPU 使用量超過 80% 時,發出警示。

使用 API 執行記錄搜尋警示規則

使用 ScheduledQueryRules API 管理工作區中的新規則。

注意

適用於使用舊版 Log Analytics 警示 API 來管理的 Log Analytics 記錄搜尋警示。 深入了解如何切換至目前的 ScheduledQueryRules API

Azure 帳單上的記錄搜尋警示

記錄搜尋警示會列在資源提供者 microsoft.insights/scheduledqueryrules 下方,其中包含:

  • Application Insights 上的記錄搜尋警示會顯示確切資源名稱,以及資源群組和警示屬性。
  • Log Analytics 上的記錄搜尋警示會在使用 scheduledQueryRules API 建立時,與確切的資源名稱、資源群組和警示屬性一起顯示。
  • 舊版 Log Analytics API 建立的記錄搜尋警示不是受追蹤的 Azure 資源,所以不會強制使用唯一資源名稱。 這些警示仍會在 microsoft.insights/scheduledqueryrules 上建立為隱藏的資源,並採用資源命名結構 <WorkspaceName>|<savedSearchId>|<scheduleId>|<ActionId>。 舊版 API 上的記錄搜尋警示會顯示上述隱藏的資源名稱,以及資源群組和警示屬性。

注意

不支援的資源字元,例如 <、>、%、&、? 和 / 會在隱藏資源名稱中取代為底線 (_)。 此字元變更也會反映在計費資訊中。

活動記錄警示 \(部分機器翻譯\)

活動記錄警示會檢查活動記錄中是否有符合所定義條件的新活動記錄事件,來監視資源。

建議您針對下列類型的案例使用活動記錄警示:

  • 在特定資源群組或訂閱中的資源發生特定作業時。 例如,您可能想要在下列情況發生時收到通知:
    • 生產資源群組中的 VM 已刪除。
    • 您訂用帳戶中的使用者獲派新角色。
  • 發生服務健康狀態事件。 服務健康狀態事件包括您訂用帳戶中資源所套用的事件和維護事件通知。

您可以建立下列活動記錄警示:

  • 除了警示事件以外,任何活動記錄事件類別
  • JSON 物件中最上層屬性的任何活動記錄事件。

活動記錄警示規則是 Azure 資源,因此可以使用 Azure Resource Manager 範本加以建立。 也可以在 Azure 入口網站中將它們建立、更新或刪除。

活動記錄警示只會針對警示建立所在訂閱中的事件進行監視。

服務健康情況警示

服務健康情況警示是一種活動警示類型。 服務健康情況可讓您知道服務中斷、計劃性維護活動以及其健康情況諮詢,因為經過驗證的服務健康情況體驗知道您目前使用的服務與資源。

您可以設定服務健康情況警示,以充分利用服務健康情況的功能,使用慣用的通訊管道收到關於服務問題、計劃性維護或其他可能影響您所用 Azure 服務和區域的變更相關資訊。

資源健康狀態警示

資源健康狀態警示是一種活動警示類型。 資源健康狀態概觀可協助您診斷會對 Azure 資源造成影響的服務問題,並取得支援。 其中會報告您的資源目前和過去的健康情況。

資源健康狀態依賴不同 Azure 服務的訊號,來評估資源健康與否。 如果資源健康狀態不佳,資源健康狀態會分析更多資訊來判斷問題的來源。 其也會回報 Microsoft 為修正問題所採取的動作,並識別您可執行的解決問題動作。

智慧型偵測警示

當您為專案設定 Application Insights,且應用程式產生特定資料量之後,智慧偵測需先利用 24 小時來了解應用程式的正常行為。 您的應用程式效能具有一般的行為模式。 某些要求或相依性呼叫會比其他要求更容易失敗;且整體失敗率可能會隨著負載增加而上移。

「智慧偵測」會使用機器學習服務來尋找這些異常狀況。 「智慧偵測」會監視從應用程式收到的資料,特別是失敗率的資料。 當 Web 應用程式的失敗要求比率異常增加時,Application Insights 會以幾乎即時的方式自動向您發出警示。

當資料從您的 Web 應用程式進入 Application Insights 時,「智慧偵測」會將目前的行為與過去幾天觀察到的模式做比較。 相較於先前的效能,如果失敗率異常提高,就會觸發分析。

為了協助您分級並診斷問題,警示詳細資料中會提供失敗的特性分析與相關應用程式資料。 其中也有 Application Insights 入口網站的連結,以供進一步診斷。 此功能不需要設定,因為它會使用機器學習演算法來預測一般失敗率。

計量警示會告訴您可能有問題,但智慧偵測會為您啟動診斷工作。 此功能會執行大部分的分析,否則您必須自行執行。 您可以俐落地封裝結果,以協助您快速找出問題的根本原因。

智慧偵測適用於裝載在雲端或您個人伺服器上的 Web 應用程式,會產生應用程式要求或相依性資料。

Prometheus 警示

Prometheus 警示可用來監視儲存在適用於 Prometheus 的 Azure 監視器受管理服務中的計量。 Prometheus 警示規則會設定為 Prometheus 規則群組的一部分。 PromQL 運算式的結果解析為 true 時,就會引發警示。 引發的 Prometheus 警示會像其他警示類型一樣顯示和受到管理。

下一步