Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você pode configurar notificações a serem enviadas em execuções de um trabalho e tarefas de trabalho individuais para os seguintes eventos:
- Início
- Conclusão bem-sucedida
- Fracasso
- A duração excede um limite configurado
Você pode enviar notificações para um ou mais endereços de email ou destinos de terceiros, como Slack, Microsoft Teams, PagerDuty ou qualquer serviço baseado em webhook. Este artigo descreve as diferentes maneiras de configurar notificações no nível do trabalho.
Adicionar destinos de sistema de terceiros
Você pode configurar notificações a serem entregues a sistemas de terceiros. Os destinos de sistemas de terceiros se integram a ferramentas de notificação populares, incluindo Slack, PagerDuty, Microsoft Teams e webhooks HTTP. Um administrador deve configurar os destinos do sistema.
Para definir destinos do sistema, vá para a página de configurações de administrador, clique em Editar notificações do sistema e clique em Criar novo destino. Para cada trabalho ou tarefa, você pode configurar no máximo três destinos do sistema para cada tipo de evento de notificação. Consulte a página de configurações de administrador.
Importante
O conteúdo das mensagens do Slack e do Microsoft Teams poderá ser alterado em versões futuras. Você não deve implementar clientes ou processamentos que dependam de conteúdo ou formatação específicos dessas mensagens. Se você precisar de um esquema ou formatação específico para notificações, o Databricks recomenda configurar um webhook definido pelo usuário.
Configurar notificações em um trabalho
Antes de começar, considere o seguinte:
- As notificações no nível do trabalho não são enviadas quando as tarefas com falha são repetidas. Para receber uma notificação após cada falha de tarefa, em vez disso, use notificações de tarefa. Para adicionar notificações para execuções de tarefa, clique em Adicionar ao lado de Notificações no painel de tarefas ao adicionar ou editar uma tarefa de trabalho.
- Para cada trabalho ou tarefa, você pode configurar no máximo três destinos do sistema para cada tipo de evento de notificação.
- Um trabalho que foi concluído em um estado de sucesso com falhas é considerado em um estado bem-sucedido. Para ser notificado quando os trabalhos tiverem sido concluídos nesse estado, selecione Êxito ao configurar as notificações.
- Para ser notificado quando seu trabalho exceder um limite de duração, você deve definir o limite. Consulte Configurar notificações para trabalhos lentos.
Para adicionar uma ou mais notificações quando uma execução de trabalho começa, é concluída ou falha, faça o seguinte:
- No painel Detalhes do trabalho , role para baixo até a seção Notificações de trabalho e clique em Editar notificações.
- No canto inferior esquerdo, clique em Adicionar notificação.
- No Destino, selecione o endereço de email ou um destino do sistema.
- Marque as caixas de seleção para cada tipo de evento sobre o qual você deseja ser notificado: Iniciar, Êxito, Falha, Aviso de duração ou lista de pendências de streaming.
- Para configurar outro destino, clique em Adicionar notificação novamente e siga as etapas anteriores.
- Depois de configurar todas as notificações, clique em Salvar.
Configurar notificações para trabalhos lentos
Se você tiver configurado uma duração esperada para um trabalho, poderá adicionar uma notificação por email ou sistema se o trabalho ou tarefa exceder o limite configurado. Para receber uma notificação para um trabalho ou tarefa que exceda um limite de duração, selecione Aviso de Duração ao adicionar ou editar uma notificação. Para receber uma notificação para um trabalho ou tarefa que exceda uma métrica de backlog de streaming, selecione Streaming backlog ao adicionar ou editar uma notificação.
O seguinte se aplica às métricas de backlog de streaming:
- As notificações são enviadas quando a lista de pendências média durante um período de 10 minutos excede o limite definido.
- Para evitar mensagens excessivas, o Azure Databricks aguarda 30 minutos antes de determinar se deseja enviar outra mensagem. Embora a lista de pendências permaneça alta, você receberá atualizações em intervalos de 30 minutos.
Filtre as notificações de execuções ignoradas ou canceladas
Você pode reduzir o número de notificações enviadas filtrando notificações quando uma execução é ignorada ou cancelada. Para filtrar notificações, selecione Silenciar notificações para execuções ignoradas ou silenciar notificações para execuções canceladas ao adicionar ou modificar notificações por email ou notificações do sistema.
Por padrão, as tarefas são repetidas três vezes antes de falhar totalmente. Ao configurar notificações de tarefa, você pode selecionar Silenciar notificações até a última tentativa para filtrar todas as notificações até a última repetição.
Observação
Quando você seleciona silenciar notificações para as execuções ignoradas ou silenciar notificações para as execuções canceladas para uma tarefa, isso não filtra as notificações configuradas para atividades do trabalho. Para filtrar todas as notificações de execuções ignoradas ou canceladas, também é necessário filtrar as notificações no nível da tarefa que você tenha configurado.
Payloads de webhooks HTTP
Você pode configurar webhooks HTTP para serem enviados nos eventos listados na tabela a seguir.
| Código Event_type | Quando será enviado? |
|---|---|
jobs.on_start |
Enviado quando uma execução é iniciada. |
jobs.on_success |
Enviado quando uma execução é interrompida e concluída em estado de sucesso ou concluída com falhas. |
jobs.on_failure |
Enviado quando uma execução para em estado de falha. |
jobs.on_duration_warning_threshold_exceeded |
Enviado quando uma execução excede o limite de duração configurado. |
A seguir estão os payloads de exemplo enviados pelo Azure Databricks ao ponto de extremidade configurado. Esses webhooks podem ser aplicados a empregos ou tarefas.
Notificação para um evento de início de execução de trabalho:
{
"event_type": "jobs.on_start",
"workspace_id": "your_workspace_id",
"run": {
"run_id": "run_id"
},
"job": {
"job_id": "job_id",
"name": "job_name"
}
}
Notificação para um evento de início de execução de tarefa:
{
"event_type": "jobs.on_start",
"workspace_id": "your_workspace_id",
"task": {
"task_key": "task_name"
},
"run": {
"run_id": "run_id_of_task"
"parent_run_id": "run_id_of_parent_job_run"
},
"job": {
"job_id": "job_id",
"name": "job_name"
}
}
Notificação de falha na execução de um trabalho:
{
"event_type": "jobs.on_failure",
"workspace_id": "your_workspace_id",
"run": {
"run_id": "run_id"
},
"job": {
"job_id": "job_id",
"name": "job_name"
}
}
Notificação de êxito na execução de uma tarefa:
{
"event_type": "jobs.on_success",
"workspace_id": "your_workspace_id",
"task": {
"task_key": "task_name"
},
"run": {
"run_id": "run_id_of_task"
"parent_run_id": "run_id_of_parent_job_run"
},
"job": {
"job_id": "job_id",
"name": "job_name"
}
}