選擇正確的警示規則類型

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

警示的類型如下:

Azure 監視器警示的類型

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

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

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

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

計量警示規則包含這些功能:

  • 您可以在單一資源的警示規則上使用多個條件。
  • 您可以監視多個計量維度新增數據粒度。
  • 您可以使用 由機器學習驅動的動態閾值
  • 您可以設定計量警示是否為 具狀態或無狀態。 計量警示預設為具狀態。

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

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

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

使用維度縮小目標範圍

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

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

若要監視多個 Azure 資源上的相同條件,您可以使用依維度分割。 當您使用依維度分割時,您可以針對訂用帳戶或資源群組大規模建立以資源為中心的警示。 警示會依群組組合分割成個別的警示。 在 Azure 資源識別碼數據行上進行分割會使指定的資源進入警示目標。

當您想要將條件套用至範圍中的多個資源時,您也可以決定不要分割。 例如,如果資源群組範圍中至少有五部機器有超過 80% 的 CPU 使用量,您可能會想要引發警示。

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

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

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

服務 全球 Azure 政府 中國
虛擬機器 Yes .是 Yes
SQL Server 資料庫 Yes .是 Yes
SQL Server 彈性集區 Yes .是 Yes
NetApp 檔案容量集區 Yes .是 Yes
NetApp 檔案磁碟區 Yes .是 Yes
Azure Key Vault Yes .是 Yes
Azure Cache for Redis Yes .是 Yes
Azure Stack Edge 裝置 Yes .是 Yes
復原服務保存庫 No
適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器 Yes .是 Yes
裸機機 (操作員 Nexus) Yes .是 Yes
儲存體 設備 (操作員 Nexus) Yes .是 Yes
叢集 (運算子 Nexus) Yes .是 Yes
網路裝置 (操作員 Nexus) Yes .是 Yes
資料收集規則 Yes .是

注意

不支援多重資源計量警示:

  • 對 VM 客體計量發出警示。
  • VM 網路計量的警示(網路總計、網路輸出總計、輸入流量、輸出流量、輸入流量上限建立速率,以及輸出流量最大建立率)。

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

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

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

動態閾值會使用進階機器學習來:

  • 瞭解計量的歷史行為。
  • 識別模式並適應一段時間的計量變更,例如每小時、每日或每周模式。
  • 辨識指出可能服務問題的異常狀況。
  • 計算計量最適當的臨界值。

機器學習會持續使用新數據來深入瞭解,並讓閾值更精確。 由於系統會隨著時間調整計量的行為,並根據其模式的偏差來警示,因此您不需要知道每個計量的「正確」閾值。

動態閾值可協助您:

  • 使用一個警示規則,為數百個計量系列建立可調整的警示。 如果您有較少的警示規則,則花費較少的時間來建立和管理警示規則。
  • 建立規則,而不需要知道要設定的臨界值。
  • 使用高階概念來設定計量警示,而不需要對計量有廣泛的領域知識。
  • 防止沒有預期模式的嘈雜(低精確度)或寬(低召回率)閾值。
  • 處理嘈雜計量(例如計算機 CPU 或記憶體)和分散率低的計量(例如可用性和錯誤率)。

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

記錄搜尋警示

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

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

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

記錄搜尋警示可以測量兩個不同的專案,這可用於不同的監視案例:

  • 數據表數據列:傳回的數據列數目可用來處理 Windows 事件記錄、Syslog 和應用程式例外狀況等事件。
  • 數值數據行的計算:根據任何數值數據行計算可用來包含任意數目的資源。 例如CPU百分比。

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

  • 每個評估最多可以觸發 300 個警示。
  • 您最多可以有 5000 個警示與 fired 警示條件。

注意

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

使用維度監視資源的多個實例

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

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

若要監視多個 Azure 資源上的相同條件,您可以使用依維度分割。 當您使用依維度分割時,您可以針對訂用帳戶或資源群組大規模建立以資源為中心的警示。 警示會使用數值或字串數據行來分組組合,以分割成個別的警示。 在 Azure 資源識別碼數據行上進行分割會使指定的資源進入警示目標。

當您想要將條件套用至範圍中的多個資源時,您也可以決定不要分割。 例如,如果資源群組範圍中至少有五部機器有超過 80% 的 CPU 使用量,您可能會想要引發警示。

使用 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 警示會像其他警示類型一樣顯示和管理。

下一步