O que é o Databricks SQL alerta?
Databricks SQL O alerta executa periodicamente consultas, avalia as condições definidas e envia notificações se uma condição for atendida. O senhor pode configurar o alerta para monitorar seus negócios e enviar notificações quando os dados informados estiverem fora dos limites esperados. Programar um alerta executa sua consulta subjacente e verifica os critérios do alerta. Isso é independente de qualquer programa que possa existir na consulta subjacente.
- As consultas de alavancagem de alerta com parâmetros usam o valor default especificado no editor SQL para cada parâmetro.
visualizar e organizar alertas
Use uma das seguintes opções para acessar o alerta:
- Clique
no view espaço de trabalho na barra lateral para alertar na pasta Home, onde eles são armazenados default por. Os usuários podem organizar os alertas em pastas no navegador workspace junto com outros objetos Databricks.
- Clique no
alerta na barra lateral view para acessar a página de listagem de alertas.
Em default, os objetos são classificados em ordem cronológica inversa. Você pode reordenar a lista clicando nos cabeçalhos das colunas. Clique em All alerta tab próximo à parte superior da tela para view todos os alertas no workspace. Clique em My alerta tab para view alerta do qual o senhor é o proprietário.
- Name mostra o nome das cadeias de caracteres de cada alerta.
- O estado mostra se o status do alerta é
TRIGGERED
,OK
, ouUNKNOWN
. - Última atualização mostra a data ou hora da última atualização.
- Criado em mostra a data e a hora em que o alerta foi criado.
TRIGGERED
significa que, na execução mais recente, a coluna Value (Valor) na consulta de destino atendeu à Condição e ao limite que o senhor configurou. Se o seu alerta verificar se "cats" está acima de 1500, o alerta será acionado enquanto "cats" estiver acima de 1500.OK
significa que, na execução mais recente da consulta, a coluna Value não atendeu à Condição e ao limite que o senhor configurou. Isso não significa que o alerta não tenha sido acionado anteriormente. Se o valor de "cats" for agora 1470, o alerta será exibido comoOK
.UNKNOWN
significa que o Databricks SQL não tem dados suficientes para avaliar o alerta critérios. O senhor verá esse status imediatamente após a criação do alerta e até que a consulta seja executada. Você também verá esse status se não houver dados no resultado da consulta ou se o resultado da consulta mais recente não incluir a coluna de valor que você configurou.
Criar um alerta
Siga estas passos para criar um alerta em uma única coluna de uma query.
-
Siga um destes procedimentos:
- Clique em
New na barra lateral e selecione alerta .
- Clique em
alerta na barra lateral e clique no botão + New alerta .
- Clique em
workspace na barra lateral e clique em + Create alerta .
- Clique em
-
No campo Consulta , pesquise uma consulta de destino.
Para alertar sobre várias colunas, o senhor precisa modificar sua consulta. Ver agregações de alerta.
-
No campo Trigger condition (Condição de acionamento ), configure o alerta.
-
O menu suspenso da coluna Valor controla qual campo do resultado da consulta é avaliado. As condições de alerta podem ser definidas no primeiro valor de uma coluna no resultado da consulta, ou o senhor pode optar por definir uma agregação em todas as linhas de uma única coluna, como SUM ou AVERAGE.
-
O menu suspenso Operator (Operador ) controla as operações lógicas a serem aplicadas.
-
A entrada de texto do valor limite é comparada com a coluna Value (Valor) usando a Condição que o senhor especificar.
-
-
Clique em Preview alert (Visualizar alerta ) para visualizar o alerta e testar se o alerta seria acionado com os dados atuais.
-
No campo When alert is triggered, send notification (Quando o alerta é acionado, enviar notificação ), selecione quantas notificações serão enviadas quando o alerta for acionado:
- Apenas uma vez : envie uma notificação quando o status do alerta mudar de
OK
paraTRIGGERED
. - Cada vez que o alerta é avaliado : Enviar uma notificação sempre que o status do alerta for
TRIGGERED
, independentemente de seu status na avaliação anterior. - No máximo a cada : Enviar uma notificação sempre que o status do alerta for
TRIGGERED
em um intervalo específico. Essa opção permite que o senhor evite spam de notificação para alertas que são acionados com frequência.
Independentemente da configuração de notificação escolhida, você recebe uma notificação sempre que o status passa de
OK
paraTRIGGERED
ou deTRIGGERED
paraOK
. As configurações de programação afetam o número de notificações que o senhor receberá se o status permanecerTRIGGERED
de uma execução para outra. Para obter detalhes, consulte Frequência de notificação. - Apenas uma vez : envie uma notificação quando o status do alerta mudar de
-
No menu suspenso do padrão , escolha um padrão:
-
Use default padrão : a notificação de alerta é uma mensagem com links para a tela de configuração de alerta e a tela de consulta.
-
Usar padrão personalizado : a notificação de alerta inclui informações mais específicas sobre o alerta.
-
Uma caixa é exibida, consistindo em campos de entrada para assunto e corpo. Qualquer conteúdo estático é válido, e o senhor pode incorporar variáveis padrão integradas:
ALERT_STATUS
: O status de alerta avaliado (strings).ALERT_CONDITION
: O operador de condição de alerta (cadeias de caracteres).ALERT_THRESHOLD
: O limite de alerta (cadeias de caracteres ou número).ALERT_COLUMN
: O nome da coluna de alerta (strings).ALERT_NAME
: O nome do alerta (strings).ALERT_URL
: O URL da página de alerta (strings).QUERY_NAME
: O nome da consulta associada (cadeias de caracteres).QUERY_URL
: O URL da página de consulta associada (strings).QUERY_RESULT_TABLE
: A tabela HTML do resultado da consulta (strings). Os resultados são limitados às primeiras 100 linhas. Somente os destinos de notificação email podem renderizar HTML.QUERY_RESULT_VALUE
: O valor do resultado da consulta (cadeias de caracteres ou número).QUERY_RESULT_ROWS
: as linhas do resultado da consulta (matriz de valores).QUERY_RESULT_COLS
: As colunas do resultado da consulta (matriz de strings).
Um exemplo de assunto, por exemplo, poderia ser:
Alert "{{ALERT_NAME}}" changed status to {{ALERT_STATUS}}
. 2. O senhor pode usar HTML para formatar mensagens em um padrão personalizado. Somente os destinos de notificação email podem renderizar HTML. As seguintes tags e atributos são permitidos no padrão:-
Etiquetas:
<a>
,<abbr>
,<acronym>
,<b>
,<blockquote>
,<body>
,<br>
,<code>
,<div>
,<em>
,<h1>
,<h2>
,<h3>
,<h4>
,<h5
>,<h6
>,<head
>,<hr>
,<html>
,<i>
,<li>
,<ol>
,<p>
, ``,<strong>
,<table>
,<tbody>
,<td>
,<th>
,<tr>
,<ul>
-
Atributos: href (para
<a>
), título (para<a>
,<abbr>
,<acronym>
)
- Clique no botão de alternância Visualizar para visualizar o resultado renderizado.
-
-
A visualização é útil para verificar se as variáveis padrão são renderizadas corretamente. Não é uma representação precisa do conteúdo da notificação eventual, pois cada destino de notificação pode exibir notificações de forma diferente.
-
Clique no botão Salvar alterações .
-
Clique em Create Alert (Criar alerta ).
-
Clique em Add programar .
- Use os seletores do site dropdown para especificar a frequência, o período, a hora de início e o fuso horário. Opcionalmente, marque a caixa de seleção Show cron syntax (Mostrar sintaxe do cron ) para editar o programa no Quartz Cron Syntax.
- Escolha Mais opções para mostrar as configurações opcionais. Você também pode escolher:
- Um nome para o programador.
- Um SQL warehouse para alimentar a consulta. Em default, o SQL warehouse usado para a execução de consultas ad hoc também é usado para um trabalho agendado. Use essa configuração opcional para selecionar um depósito diferente para executar a consulta agendada.
-
Clique em Destinations (Destinos ) tab na caixa de diálogo Add programar .
- Use o menu suspenso para selecionar um destino de notificação disponível. Ou, comece a digitar um nome de usuário para adicionar indivíduos.
Se pular esta passo, você não será notificado quando o alerta for acionado.
-
Clique em Criar . Os detalhes do alerta e da notificação salvos são exibidos na tela.
-
Compartilhe o programa.
- À direita do programar listado, escolha o menu
kebab e selecione Edit programar permissions (Editar permissões do programar ).
- Escolha um usuário ou grupo no menu suspenso da caixa de diálogo.
- Escolha uma das seguintes permissões de programa:
-
NO PERMISSIONS: Nenhuma permissão foi concedida. Os usuários sem permissões não podem ver que o programa existe, mesmo que sejam assinantes ou estejam incluídos nos destinos de notificação listados.
-
CAN VIEW: Concede permissão para view os resultados da execução agendada.
-
CAN MANAGE RUN: Concede permissão para view os resultados da execução agendada.
-
CAN MANAGE: Concede permissão para view, modificar e excluir programas. Essa permissão é necessária para fazer alterações no intervalo de execução, atualizar a lista de assinantes e pausar ou cancelar a pausa do programa.
-
IS OWNER: Concede todas as permissões de CAN MANAGE. Além disso, as credenciais do proprietário do programar serão usadas para executar as consultas do painel. Somente um administrador do site workspace pode alterar o proprietário.
-
- À direita do programar listado, escolha o menu
As permissões para alerta e programar são separadas. Conceda acesso a usuários e grupos na lista de destinos de notificações para que eles possam view os resultados da execução agendada.
-
Compartilhe o alerta.
- Clique
próximo ao canto superior direito da página.
- Adicione usuários ou grupos que devem ter acesso ao alerta.
- Escolha o nível de permissão apropriado e clique em Adicionar .
- Clique
CAN MANAGE concede permissão para view, modificar e excluir programas. Essa permissão é necessária para fazer alterações no intervalo de execução, atualizar a lista de destinos de notificação e pausar ou cancelar a pausa do programa.
Para obter mais informações sobre níveis de permissão de alerta, consulte ACLs de alerta.
agregações de alerta
Uma agregação em um alerta funciona modificando o SQL original da consulta Databricks SQL anexada ao alerta. O alerta agrupa o texto da consulta original em uma expressão de tabela comum (CTE) e executa uma consulta de agregação de agrupamento nela para agregar o resultado da consulta.
Por exemplo, uma agregação SUM
em um alerta anexado a uma consulta com texto SELECT 1 AS column_name
significa que sempre que o alerta for atualizado, o SQL modificado dessa execução será: WITH q AS (SELECT 1 AS column_name) SELECT SUM(column_name) FROM q
.
Isso significa que o resultado da consulta original (pré-agregado) não pode ser mostrado em um corpo personalizado de alerta (com parâmetros como QUERY_RESULT_ROWS
e QUERY_RESULT_COLS
) sempre que houver uma agregação em um alerta. Em vez disso, essas variáveis exibirão apenas o resultado final da consulta pós-agregação.
Todas as condições de acionamento relacionadas a agregações não são compatíveis com a API.
alerta em várias colunas
Para definir um alerta com base em várias colunas de uma consulta, sua consulta pode implementar a lógica de alerta e retornar um valor booleano para que o alerta seja acionado. Por exemplo:
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
Essa consulta retorna 1
quando drafts_count > 10000 and archived_count > 5000
.
Em seguida, o senhor pode configurar o alerta para ser acionado quando o valor for 1
.
Frequência de notificação
O Databricks SQL envia notificações para os destinos de notificação escolhidos sempre que detecta
que o status do alerta foi alterado de OK
para TRIGGERED
ou vice-versa.
Considere este exemplo em que um alerta é configurado em uma consulta que está programada
para ser executada uma vez por dia. O status diário do alerta é exibido na tabela a seguir.
Antes de segunda-feira, o status de alerta era OK
.
Dia | Status do alerta |
---|---|
Segunda-feira | OK |
terça-feira | OK |
quarta-feira | ACIONADO |
quinta-feira | ACIONADO |
Sexta-feira | ACIONADO |
sábado | ACIONADO |
domingo | OK |
Se a frequência de notificação estiver definida como Just Once
, o Databricks SQL enviará uma notificação para
na quarta-feira, quando o status for alterado de OK
para TRIGGERED
, e para
novamente no domingo, quando for alterado novamente. Ele não envia alerta na quinta-feira,
na sexta-feira ou no sábado, a menos que o senhor o configure especificamente para isso, pois o status de alerta
não mudou entre as execuções nesses dias.
Configurar permissões de alerta e transferir a propriedade do alerta
Para compartilhar consultas, o senhor deve ter pelo menos a permissão CAN MANAGE em uma consulta. Para níveis de permissão de alerta, consulte ACLs de alerta.
-
Na barra lateral, clique em alerta .
-
Clique em um alerta.
-
Clique no botão
no canto superior direito para abrir a caixa de diálogo de compartilhamento .
-
Pesquise e selecione os grupos e usuários e atribua o nível de permissão.
-
Clique em Adicionar .
Transferir a propriedade de um alerta
Quando o senhor salva um alerta, torna-se o proprietário do alerta. Se o proprietário de um alerta for removido de um workspace, o alerta não terá mais um proprietário. Um usuário administrador do workspace pode transferir a propriedade de um alerta para outro usuário. entidade de serviço e grupos não podem receber a propriedade de um alerta. O senhor também pode transferir a propriedade usando a API de permissões.
-
Como administrador do workspace, faça logon no seu workspace Databricks.
-
Na barra lateral, clique em alerta .
-
Clique em um alerta.
-
Clique no botão Share (Compartilhar ) no canto superior direito para abrir a caixa de diálogo de compartilhamento .
-
Clique no ícone de engrenagem no canto superior direito e clique em Assign new owner (Atribuir novo proprietário) .
-
Selecione o usuário ao qual atribuir a propriedade.
-
Clique em Confirmar .