重要
這項功能位於 測試版 (Beta) 中。
此頁面提供啟用和使用 Databricks SQL 警示的逐步指引,以在符合這些條件時自動執行查詢、評估自定義條件,以及傳遞通知。 透過警示,您可以主動監視您的商務數據,並在報告值落在預期閾值之外時及時接收通知。 當您排程警示時,會執行其相關聯的查詢並檢查警示準則,而不論基礎查詢是否已有任何現有的排程。 此外,您可以存取警示歷程記錄,以檢閱過去的警示評估結果。
若要瞭解如何改用舊版警示,請參閱 什麼是舊版警示?。
在您的工作區中啟用警示
對於大多數客戶,工作區管理員可以從 [預覽] 頁面控制此預覽的工作區存取權。 如果您在工作區中看不到此版本的警示,請連絡 Databricks 帳戶小組。
啟用此預覽不會影響您現有的警示;您可以同時使用這些警示和舊版警示。
檢視及組織警示
按兩下提要欄位中的 [ 警示 ] 以開啟警示清單頁面。
[ 警示] 索引標籤預設為開啟,並顯示工作區中的所有警示。 您可以輸入名稱來篩選。 按一下 [僅限我的提示] 以僅顯示您是擁有者的提示。
舊版警示 標籤顯示使用先前警示系統建立的警示。
名稱 會顯示每個警示的字串名稱。
狀態 會顯示警示狀態
TRIGGERED
為、OK
或UNKNOWN
。排程 會顯示上次更新的時間或日期。
擁有者 會顯示擁有警示的人員用戶名稱。
建立時間 會顯示警示建立的日期和時間。
-
TRIGGERED
表示在最近的執行中,目標查詢中的 [值] 資料行符合您所設定的條件和臨界值。 如果您的警示會檢查「貓」是否超過1500,只要「貓」超過1500,就會觸發警示。 -
OK
表示在最近的查詢執行中, [值 ] 資料行不符合您設定的 [條件 ] 和 [閾值 ]。 這並不表示先前未觸發 警示 。 如果您的「貓」值現在是 1470,您的警示會顯示為OK
。 -
UNKNOWN
表示 Databricks SQL 沒有足夠的數據來評估警示準則。 此狀態會在建立警示之後立即出現,並維持在查詢執行之前。 如果查詢結果中沒有數據,或最新的查詢結果 不包含您設定 的值數據行,也會使用此狀態。 -
ERROR
表示警示評估期間發生錯誤。
-
建立警示
本節中的步驟將逐步引導您建立如下圖所示的警示。 使用標籤和說明來瞭解每個元件。
- 數據集: 撰寫並測試您想要警示的查詢。
- 條件: 選取應觸發警示通知的值閾值。 您可以執行查詢來測試本節中的條件。
- 排程: 設定定期的時間表以執行警示。
- 通知: 當臨界值超出預期範圍時,應通知使用者或通知目的地以發出警示。
- 高深: 使用進階設定來警示特殊值和條件。
使用下列步驟來建立警示:
點擊側邊欄中的
,然後點擊建立警示。
在 數據集 編輯器中複製並貼上下列查詢。
SELECT to_date(tpep_pickup_datetime) as date, SUM(fare_amount) as amount FROM `samples`.`nyctaxi`.`trips` GROUP BY ALL ORDER BY 1 DESC
在 [ 條件] 欄位中,設定應觸發警示的條件。
套用下列設定,如下所示:
- 選取 [總和 ] 作為要檢查的數據值。 警示條件可以在查詢結果中數據行的第一個值上設定,或者您可以選擇設定單一數據行所有數據列的匯總,例如 SUM 或 AVERAGE。
- 選取 [數量 ] 作為要檢查的數據行。
- 選取 > [大於] 作為要套用的邏輯運算符。
- 將臨界值設定為
Static value
4000。 默認會選取靜態值。 在 [值] 欄位中輸入 4000。
按兩下 [測試條件 ] 預覽警示,並測試警示是否會以目前數據觸發。 提供的設定應該觸發警示。 您可以變更臨界值以進一步測試。
使用 排程 下拉功能表來設定警示,使其從每小時的第 0 分鐘開始,每隔5分鐘執行一次。 選擇性地選取 [顯示 cron 語法] 複選框,以編輯 [Quartz Cron 語法] 中的排程。
在 [ 通知] 區 段中,搜尋您的用戶名稱,並在出現時按兩下它。
按一下 [建立]。
系統會儲存您的警示,並會在您提供的排程上執行。 此範例中使用的數據是靜態的,因此,如果您的 測試條件 傳回為 觸發,下次執行時會再次傳回。 您會收到電子郵件通知作為警示。 如果 測試條件 傳回 [確定],則不會傳送任何通知。
檢閱警示詳細數據
隨即開啟頁面以顯示您的警示詳細數據。 此外,警示紀錄會顯示評估歷程的詳細資料。 按兩下 [ 立即執行 ] 按鈕,以不小心執行警示查詢,並在此畫面上傳回結果。
按兩下頁面右上角的 [編輯 ],繼續編輯警示。
進階設定
按兩下 [ 進階設定 ] 以套用下列設定:
在確定時通知: 當警示傳回為
OK
時傳送通知。通知頻率: 定期傳送警示通知,直到狀態傳回
OK
。空的結果狀態: 當查詢未傳回任何結果時,設定要傳回的特殊狀態。
範本: 您可以選擇使用預設樣本或自訂範本來傳送通知。 下列清單說明每個樣本類型:
使用預設範本:警示通知是訊息,其中包含 [警示設定] 畫面和 [查詢] 畫面的連結。
使用自定義範本:警示通知包含警示的更具體資訊。
方塊會顯示,其中包含主旨和本文的輸入欄位。 任何靜態內容都是有效的,而且您可以納入內建範本變數:
-
ALERT_STATUS
:評估的警示狀態(字串)。 -
ALERT_CONDITION
:警示條件運算符(字串)。 -
ALERT_THRESHOLD
:警示閾值(字串或數位)。 -
ALERT_COLUMN
:警示資料行名稱(字串)。 -
ALERT_NAME
:警示名稱(字串)。 -
ALERT_URL
:警示頁面 URL (字串)。 -
QUERY_NAME
:相關聯的查詢名稱(字串)。 -
QUERY_URL
:相關聯的查詢頁面 URL(字串)。 -
QUERY_RESULT_TABLE
:查詢結果 HTML 數據表(字串)。 結果僅限於前 100 個數據列。 只有電子郵件通知目的地可以轉譯 HTML。 -
QUERY_RESULT_VALUE
:查詢結果值(字串或數位)。 -
QUERY_RESULT_ROWS
:查詢結果數據列(值陣列)。 -
QUERY_RESULT_COLS
:查詢結果數據行(字串陣列)。
例如,例如,範例主旨可能是:
Alert "{{ALERT_NAME}}" changed status to {{ALERT_STATUS}}
。-
您可以使用 HTML 來格式化自訂範本中的訊息。 只有電子郵件通知目的地可以轉譯 HTML。 樣本中允許下列標籤和屬性:
- 標記:
<a>
、<abbr>
、、<acronym>
<b>
<blockquote>
<body>
<br>
<code>
<div>
<em>
<h1>
<h2>
<h3>
<h4>
<h5
><h6
><head
><hr>
<html>
<i>
<li>
<ol>
<p>
<span>
<strong>
<table>
<tbody>
<td>
<th>
<tr>
<ul>
- 屬性:href(適用於 ),標題(針對
<a>
<a>
,<abbr>
)<acronym>
- 標記:
按兩下 [ 預覽] 切換按鈕,預覽轉譯的結果。
重要
預覽適用於驗證範本變數是否正確轉譯。 這不是最終通知內容的準確表示法,因為每個通知目的地可以以不同的方式顯示通知。
工作區管理員可以設定新的通知目的地。 請參閱 管理通知目的地。
警示匯總
警示匯總的運作方式是修改附加至警示之 Databricks SQL 查詢的原始 SQL。 警示會在通用數據表表示式 (CTE) 中包裝原始查詢文字,並在其上執行包裝匯總查詢,以匯總查詢結果。
例如, SUM
附加至含有文字 SELECT 1 AS column_name
之查詢的警示匯總表示每當重新整理警示時,執行的修改 SQL 會是: WITH q AS (SELECT 1 AS column_name) SELECT SUM(column_name) FROM q
。
這意味著每當警示進行匯總時,(未匯總的)原始查詢結果都無法顯示在警示的自定義本文中(如 QUERY_RESULT_ROWS
和 QUERY_RESULT_COLS
等參數)。 相反地,這些變數只會顯示最終的匯總后查詢結果。
注意
API 不支援所有與匯總相關的觸發條件。
多個欄位的警報
若要根據查詢的多個數據行設定警示,您的查詢可以實作警示邏輯,並傳回要觸發之警示的布爾值。 例如:
SELECT CASE WHEN drafts_count > 10000 AND archived_count > 5000 THEN 1 ELSE 0 END
FROM (
SELECT sum(CASE WHEN is_archived THEN 1 ELSE 0 END) AS archived_count,
sum(CASE WHEN is_draft THEN 1 ELSE 0 END) AS drafts_count
FROM queries) data
當 時1
,此查詢會傳drafts_count > 10000 and archived_count > 5000
回 。
然後,您可以設定警示,以在值為 1
時觸發。
計量檢視警示
因為計量檢視是設計來追蹤及測量核心商務計量,所以它們與警示配對良好,因此您可以在計量超出預期範圍時自動收到通知。 計量檢視的警示的運作方式與任何其他數據集上的警示相同。 當您撰寫查詢來設定查詢時,請使用您想要監視之計量檢視的完整名稱。
設定警示許可權並轉移警示擁有權
如需警示許可權等級,請參閱 警示 ACL。
在提要欄位中,按兩下 [ 警示]。
按兩下警示。
按兩下警示詳細資料頁面右上角的 [共用 ] 以開啟 [共用] 對話方塊。
搜尋並選取群組和使用者,並指派許可權等級。
按一下新增。
轉移警示的擁有權
當您儲存警示時,您會成為警示的擁有者。 如果警示的擁有者已從工作區中移除,警示就不會再擁有擁有者。 工作區系統管理員使用者可以將警示的擁有權轉移給不同的使用者。 服務主體和群組無法指派警示的擁有權。 您也可以使用 權限 API 來轉移所有權。
身為工作區管理員,登入您的 Azure Databricks 工作區。
在提要欄位中,按兩下 [ 警示]。
按兩下警示。
按下右上方的 [共用] 按鈕,以開啟 [共用] 對話方塊。
按下右上方的 [齒輪] 圖示,然後按下 [指派新擁有者]。
選取要指派擁有權的使用者。
按一下 [確認]。