Co to są alerty SQL usługi Databricks?
Alerty SQL usługi Databricks okresowo uruchamiają zapytania, oceniają zdefiniowane warunki i wysyłają powiadomienia, jeśli warunek jest spełniony. Możesz set alerty, aby monitorować firmę i wysyłać powiadomienia, gdy zgłoszone dane wykraczają poza oczekiwane limity. Planowanie alertu wykonuje zapytanie bazowe i sprawdza kryteria alertu. Jest to niezależne od dowolnego harmonogramu, który może istnieć w zapytaniu bazowym.
Ważne
- Alerty korzystające z zapytań z parameters używają wartości domyślnej określonej w edytorze SQL dla każdego parametru.
Wyświetlanie i organizowanie alertów
Aby uzyskać dostęp do alertów, użyj jednej z następujących opcji:
- Kliknij ikonę obszaru roboczego
Obszar roboczy na pasku bocznym, aby wyświetlić alerty w folderzestrona główna, są one domyślnie przechowywane. Użytkownicy mogą organizować alerty w folderach w przeglądarce obszaru roboczego wraz z innymi obiektami usługi Databricks. - Kliknij pozycję Alerty na pasku bocznym, aby wyświetlić stronę listy alertów.
Domyślnie obiekty są sortowane w odwrotnej kolejności chronologicznej. Możesz zmienić kolejność list, klikając nagłówki column. Kliknij kartę Wszystkie alerty w górnej części ekranu, aby wyświetlić wszystkie alerty w obszarze roboczym. Kliknij kartę Moje alerty, aby wyświetlić alerty where jesteś właścicielem.
- Kolumna Nazwa zawiera nazwy poszczególnych alertów w postaci ciągu.
- Kolumna Stan wskazuje stan alertu:
TRIGGERED
(wyzwolono),OK
lubUNKNOWN
(nieznany). - Ostatnia aktualizacja pokazuje czas lub datę ostatniej aktualizacji.
-
Utworzony na stronie pokazuje datę i godzinę utworzenia alertu.
-
TRIGGERED
oznacza, że w ostatnim wykonaniu wartość column w zapytaniu docelowym spełnia skonfigurowany warunek i próg. Jeśli alert sprawdza, czy wartość w polu „Koty” jest wyższa niż 1500, zostanie wyzwolony, jeśli wartość w polu „Koty” będzie wyższa niż 1500. -
OK
oznacza, że w ostatnim wykonaniu zapytania wartość column nie spełniała skonfigurowanego warunku i progu. Nie oznacza to, że alert nie został wcześniej wyzwolony. Jeśli wartość "cats" wynosi teraz 1470, alert będzie wyświetlany jakoOK
. -
UNKNOWN
oznacza, że usługa Sql usługi Databricks nie ma wystarczającej ilości danych, aby ocenić kryteria alertu. Ten stan będzie widoczny natychmiast po utworzeniu alertu i do momentu wykonania zapytania. Ten stan będzie również widoczny, jeśli w wyniku zapytania nie było żadnych danych lub jeśli ostatni wynik zapytania nie zawiera wartości Column, którą skonfigurowałeś.
-
Tworzenie alertu
Wykonaj następujące kroki, aby utworzyć alert dla pojedynczego column zapytania.
Wykonaj jedną z następujących czynności:
- Kliknij Nowy na pasku bocznym i selectAlert.
- Kliknij pozycję Alerty na pasku bocznym i kliknij przycisk + Nowy alert.
- Kliknij pozycję Obszar roboczy na pasku bocznym i kliknij pozycję + Utwórz alert.
- Kliknij menu kebab w prawym górnym rogu zapisanego zapytania i kliknij pozycję + Utwórz alert.
W polu Zapytanie wyszukaj zapytanie docelowe.
Aby otrzymywać alerty dotyczące wielu columns, należy zmodyfikować zapytanie. Zobacz Agregacje alertów.
W polu Warunek wyzwalacza skonfiguruj alert.
Lista rozwijana Wartość column określa, które pole wyniku zapytania jest oceniane. Warunki alertu mogą być set na pierwszej wartości column w wyniku zapytania lub można wybrać set agregację we wszystkich wierszach pojedynczego column, takich jak suma lub średnia.
Lista rozwijana Operator steruje operacją logiczną, która ma zostać zastosowana.
Wprowadzanie tekstu wartości progowej jest porównywane z wartością column przy użyciu określonego przez Ciebie warunku.
Kliknij pozycję Podgląd alertu , aby wyświetlić podgląd alertu i sprawdzić, czy alert będzie wyzwalany przy użyciu bieżących danych.
W polu "Gdy alert zostanie wyzwolony, wyślij powiadomienie", określ select liczbę powiadomień wysyłanych po wyzwoleniu alertu.
-
Tylko raz: wyślij powiadomienie, gdy stan alertu zmieni się z
OK
naTRIGGERED
. -
Za każdym razem, gdy alert jest oceniany: wyślij powiadomienie zawsze, gdy stan alertu jest
TRIGGERED
niezależnie od jego stanu w poprzedniej ocenie. -
Co najwyżej każde: wyślij powiadomienie zawsze, gdy stan alertu jest
TRIGGERED
określony w określonym interwale. Ten wybór pozwala uniknąć spamu powiadomień dla alertów wyzwalających często.
Niezależnie od wybranego ustawienia powiadomień otrzymasz powiadomienie za każdym razem, gdy stan przechodzi z
OK
doTRIGGERED
lub zTRIGGERED
.OK
Ustawienia harmonogramu mają wpływ na liczbę powiadomień, które otrzymasz, jeśli stan pozostanieTRIGGERED
z jednego wykonania do następnego. Aby uzyskać szczegółowe informacje, zobacz Częstotliwość powiadomień.-
Tylko raz: wyślij powiadomienie, gdy stan alertu zmieni się z
Z listy rozwijanej Szablon wybierz szablon:
- Użyj szablonu domyślnego: powiadomienie o alertach to komunikat z linkami do ekranu konfiguracja alertu i ekranu Zapytanie.
-
Użyj szablonu niestandardowego: powiadomienie o alertach zawiera bardziej szczegółowe informacje o alercie.
Zostanie wyświetlone pole składające się z pól wejściowych dla tematu i treści. Dowolna zawartość statyczna jest prawidłowa i można uwzględnić wbudowane zmienne szablonu:
-
ALERT_STATUS
: oceniany stan alertu (ciąg). -
ALERT_CONDITION
: operator warunku alertu (ciąg). -
ALERT_THRESHOLD
: Próg alertu (ciąg lub liczba). -
ALERT_COLUMN
: nazwa alertu column (ciąg). -
ALERT_NAME
: nazwa alertu (ciąg). -
ALERT_URL
: adres URL strony alertu (ciąg). -
QUERY_NAME
: skojarzona nazwa zapytania (ciąg). -
QUERY_URL
: skojarzony adres URL strony zapytania (ciąg). -
QUERY_RESULT_TABLE
: wynik zapytania HTML table (ciąg). Wyniki są ograniczone do pierwszych 100 wierszy. -
QUERY_RESULT_VALUE
: wartość wyniku zapytania (ciąg lub liczba). -
QUERY_RESULT_ROWS
: wiersze wyników zapytania (tablica wartości). -
QUERY_RESULT_COLS
: wynik zapytania columns (tablica ciągów).
Przykładem tematu może być na przykład:
Alert "{{ALERT_NAME}}" changed status to {{ALERT_STATUS}}
.-
Kod HTML umożliwia formatowanie komunikatów w szablonie niestandardowym. Następujące tagi i atrybuty są dozwolone w szablonach:
- Tagi:
<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>
- Atrybuty: href (dla
<a>
), tytuł (dla<a>
,<abbr>
,<acronym>
)
- Tagi:
Kliknij przycisk przełącznika Podgląd, aby wyświetlić podgląd renderowanego wyniku.
Ważne
Wersja zapoznawcza jest przydatna do sprawdzania, czy zmienne szablonu są renderowane poprawnie. Nie jest to dokładna reprezentacja zawartości powiadomienia ostatecznej, ponieważ każde miejsce docelowe powiadomień może wyświetlać powiadomienia inaczej.
Kliknij przycisk Zapisz zmiany.
Kliknij pozycję Utwórz alert.
Kliknij pozycję Dodaj harmonogram.
- Użyj selektorów list rozwijanych, aby określić częstotliwość, okres, czas rozpoczęcia i strefę czasową. Opcjonalnie select pole wyboru Pokaż składnię cron, aby edytować harmonogram w Składnia Cron kwarcu.
- Wybierz pozycję Więcej opcji , aby wyświetlić ustawienia opcjonalne. Możesz również wybrać następujące opcje:
- Nazwa harmonogramu.
- Usługa SQL Warehouse do zasilania zapytania. Domyślnie usługa SQL Warehouse używana do wykonywania zapytań ad hoc jest również używana dla zaplanowanego zadania. Użyj tego opcjonalnego ustawienia, aby select inny magazyn, aby uruchomić zaplanowane zapytanie.
Kliknij kartę Miejsca docelowe w oknie dialogowym Dodawanie harmonogramu .
- Użyj listy rozwijanej, aby select dostępne miejsce docelowe powiadomień. Możesz też zacząć wpisywać nazwę użytkownika, aby dodać osoby.
Ważne
Jeśli pominiesz ten krok, otrzymasz powiadomienie o wyzwoleniu alertu.
Kliknij pozycję Utwórz. Zapisane szczegóły alertu i powiadomienia są wyświetlane na ekranie.
Udostępnij harmonogram.
- Po prawej stronie wymienionego harmonogramu wybierz menu kebab i selectEdytuj uprawnienia harmonogramu.
- Wybierz użytkownika lub grupę z menu rozwijanego w oknie dialogowym.
- Wybierz następujące uprawnienia harmonogramu:
- BRAK UPRAWNIEŃ: Nie udzielono uprawnień. Użytkownicy bez uprawnień nie widzą, że harmonogram istnieje, nawet jeśli są subskrybentami lub uwzględnieni w wymienionych miejscach docelowych powiadomień.
- MOŻE WYŚWIETLAĆ: Przyznaje uprawnienie do wyświetlania zaplanowanych wyników uruchamiania.
- MOŻE ZARZĄDZAĆ PRZEBIEGIEM: Przyznaje uprawnienie do wyświetlania zaplanowanych wyników uruchamiania.
- CAN MANAGE: Udziela uprawnień do wyświetlania, modyfikowania i usuwania harmonogramów. To uprawnienie jest wymagane, aby wprowadzić zmiany w interwale uruchamiania, update subskrybenta listi wstrzymać lub usunąć harmonogram.
- WŁAŚCICIEL IS: Przyznaje wszystkie uprawnienia DO ZARZĄDZANIA CAN. Ponadto credentials właściciela harmonogramu będzie używane do uruchamiania zapytań do pulpitu nawigacyjnego. Tylko administrator obszaru roboczego może zmienić właściciela.
Ważne
Uprawnienia dotyczące alertów i harmonogramów są oddzielne. Grant dostęp do miejsc docelowych powiadomień dla użytkowników i grup list, aby mogli wyświetlać wyniki zaplanowanych uruchomień.
Udostępnij alert.
- Kliknij w prawym górnym rogu strony.
- Dodaj użytkowników lub grupy, którzy powinni mieć dostęp do alertu.
- Wybierz odpowiedni poziom uprawnień, a następnie kliknij przycisk Dodaj.
Ważne
PROGRAM CAN MANAGE udziela uprawnień do wyświetlania, modyfikowania i usuwania harmonogramów. To uprawnienie jest wymagane, aby móc wprowadzać zmiany w interwale uruchamiania, update miejscu docelowym powiadomień listoraz wstrzymać lub wznowić harmonogram.
Aby uzyskać więcej informacji na temat poziomów uprawnień alertów, zobacz Alerty ACL.
Agregacje alertów
Agregacja alertu działa przez zmodyfikowanie oryginalnego kodu SQL zapytania SQL usługi Databricks dołączonego do alertu. Alert opakowuje oryginalny tekst zapytania w typowym wyrażeniu table (CTE) i wykonuje na nim zapytanie agregacji opakowujące w celu zagregowania wyniku zapytania.
Na przykład agregacja alertu dołączonego do zapytania z tekstem oznacza, SUM
że za każdym razem, gdy alert zostanie odświeżony, zmodyfikowany kod SQL, który jest uruchamiany, to: SELECT 1 AS column_name
.WITH q AS (SELECT 1 AS column_name) SELECT SUM(column_name) FROM q
Oznacza to, że oryginalny wynik zapytania (przedzagregowany) nie może być wyświetlany w niestandardowej treści alertu (parameters, QUERY_RESULT_ROWS
i QUERY_RESULT_COLS
) za każdym razem, gdy następuje agregacja w alertach. Zamiast tego te zmienne będą wyświetlać tylko końcowy wynik zapytania po agregacji.
Uwaga
Wszystkie warunki wyzwalacza związane z agregacjami nie są obsługiwane przez interfejs API.
Alert dotyczący wielu columns
Aby wykonać set alert na podstawie wielu columns zapytania, twoje zapytanie może zaimplementować logikę alertu i zwrócić wartość logiczną, aby alert wyzwolił się. Na przykład:
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
To zapytanie zwraca wartość 1
, gdy drafts_count > 10000 and archived_count > 5000
.
Następnie można skonfigurować alert do wyzwalania, gdy wartość to 1
.
Częstotliwość powiadomień
Usługa Databricks SQL wysyła powiadomienia do wybranych miejsc docelowych powiadomień za każdym razem, gdy wykryje, że stan alertu zmienił się z OK
na TRIGGERED
lub na odwrót.
Rozważmy ten przykład: alert where jest skonfigurowany w zapytaniu, które jest zaplanowane do uruchamiania raz dziennie. Codzienny stan alertu jest wyświetlany w następujących table.
Przed poniedziałkowym stanem alertu był OK
.
Dzień | Stan alertu |
---|---|
Poniedziałek | OK |
Wtorek | OK |
Środa | WYWOŁANY |
Czwartek | WYWOŁANY |
Piątek | WYWOŁANY |
Sobota | WYWOŁANY |
Niedziela | OK |
Jeśli częstotliwość powiadomień wynosi od set do Just Once
, usługa Databricks SQL wysyła powiadomienie w środę, gdy stan zmieni się z OK
na TRIGGERED
i ponownie w niedzielę, kiedy wraca z powrotem. Nie wysyła alertów w czwartek, piątek lub sobotę, chyba że specjalnie skonfigurujesz je do tego, ponieważ stan alertu nie zmienił się między wykonaniami w tych dniach.
Konfigurowanie uprawnień alertu i przenoszenie własności alertów
Aby udostępniać zapytania, musisz mieć co najmniej uprawnienie CAN MANAGE dla zapytania. Aby uzyskać informacje o poziomach uprawnień alertów, zobacz Listy ACL alertów.
Na pasku bocznym kliknij pozycję Alerty.
Kliknij alert.
Kliknij przycisk w prawym górnym rogu, aby otworzyć okno dialogowe Udostępnianie.
Wyszukaj grupy i użytkowników, select, a następnie przypisz poziom uprawnień.
Kliknij przycisk Dodaj.
Przenoszenie własności alertu
Po zapisaniu alertu stajesz się właścicielem alertu. Jeśli właściciel alertu zostanie usunięty z obszaru roboczego, alert nie ma już właściciela. Administrator obszaru roboczego może przenieść własność alertu do innego użytkownika. Jednostki usługi i grupy nie mogą mieć przypisanej własności alertu. Własność można również przenieść przy użyciu interfejsu API uprawnień.
Jako administrator obszaru roboczego zaloguj się do obszaru roboczego usługi Azure Databricks.
Na pasku bocznym kliknij pozycję Alerty.
Kliknij alert.
Kliknij przycisk Udostępnij w prawym górnym rogu, aby otworzyć okno dialogowe Udostępnianie.
Kliknij ikonę koła zębatego w prawym górnym rogu i kliknij pozycję Przypisz nowego właściciela.
Select użytkownikowi, któremu ma zostać przypisana własność.
Kliknij przycisk Potwierdź.