Adición de notificaciones por correo electrónico y sistema para eventos de trabajo

Puede supervisar las ejecuciones de un trabajo y las tareas que forman parte de ese trabajo configurando notificaciones cuando una ejecución se inicia, se finaliza con éxito, produce un error o su duración supera un umbral configurado. Las notificaciones se pueden enviar a una o varias direcciones de correo electrónico o destinos del sistema, como Slack, Microsoft Teams, PagerDuty o cualquier servicio basado en webhook.

Configurar notificaciones del sistema

Nota:

  • Para cada trabajo o tarea, puede configurar un máximo de tres destinos del sistema para cada tipo de evento de notificación.
  • Un administrador debe configurar destinos del sistema. Los destinos del sistema se configuran seleccionando Crear nuevo destino en el cuadro de diálogo Editar notificaciones del sistema o en la página de configuración del administrador.
  • Las notificaciones establecidas en el nivel de trabajo no se envían cuando se reintentan las tareas con errores. Para recibir una notificación de error después de cada tarea con errores (incluidos todos los reintentos con errores), use notificaciones de tareas en su lugar. Para agregar notificaciones del sistema para las ejecuciones de tareas, haga clic en + Agregar junto a Notificaciones en el panel de tareas al agregar o editar una tarea de trabajo.
  • Un trabajo que se ha completado en un estado Succeeded with failures se considera que está en un estado correcto. Para recibir alertas de trabajos que se completen en este estado, debe seleccionar Correcto al configurar las notificaciones.

Las notificaciones del sistema se integran con herramientas de notificación populares, como:

Para agregar una o varias notificaciones del sistema cuando las ejecuciones de este trabajo tienen un evento notificable, como un inicio, una finalización o un error de un trabajo:

  1. En el panel Detalles del trabajo del trabajo, haga clic en Editar notificaciones.
  2. Haga clic en Agregar notificación y seleccione un destino del sistema en Destino.
  3. En Select a system destination (Seleccionar un destino del sistema), seleccione un destino y haga clic en la casilla de cada tipo de notificación que se va a enviar a ese destino.
  4. Para agregar otro destino, haga clic en Agregar notificación de nuevo.
  5. Haga clic en Confirmar.

Importante

El contenido de los mensajes de Slack y Microsoft Teams podría cambiar en futuras versiones. No se deben implementar clientes o procesamientos que dependan del contenido o formato específicos de estos mensajes. Si necesita un esquema o formato específicos para las notificaciones, Azure Databricks recomienda configurar un webhook definido por el usuario.

Configurar notificaciones por correo electrónico

Nota:

  • Las notificaciones establecidas en el nivel de trabajo no se envían cuando se reintentan las tareas con errores. Para recibir una notificación de error después de cada tarea con errores (incluidos todos los reintentos con errores), use notificaciones de tareas en su lugar. Para agregar notificaciones por correo electrónico para las ejecuciones de tareas, haga clic en + Agregar junto a Notificaciones en el panel de tareas al agregar o editar una tarea de trabajo.
  • Un trabajo que se ha completado en un estado Succeeded with failures se considera que está en un estado correcto. Para recibir alertas de trabajos que se completen en este estado, debe seleccionar Correcto al configurar las notificaciones.

Para agregar una o varias direcciones de correo electrónico para notificar cuándo comienzan, finalizan o se produce un error en las ejecuciones de este trabajo:

  1. En el panel Detalles del trabajo del trabajo, haga clic en Editar notificaciones.
  2. Haga clic en Agregar notificación y seleccione Dirección de correo electrónico en Destino.
  3. Escriba una dirección de correo electrónico y haga clic en la casilla de cada tipo de notificación que se quiera que se envíe a esta.
  4. Para escribir otra dirección de correo electrónico para las notificaciones, haga clic en Agregar notificación de nuevo.
  5. Haga clic en Confirmar.

Puede usar notificaciones por correo electrónico para integrarse con herramientas como Amazon SES y SNS.

Configurar notificaciones para trabajos de ejecución lenta o con retraso

Si ha configurado una duración esperada para un trabajo, puede agregar una notificación por correo electrónico o sistema si el trabajo supera la duración configurada. Para recibir una notificación de trabajos que superen el umbral de duración, seleccione la casilla Advertencia de duración al agregar o editar una notificación.

Filtrar las notificaciones de ejecuciones omitidas o canceladas

Puede reducir el número de notificaciones enviadas filtrando las notificaciones cuando se omite o cancela una ejecución. Para filtrar las notificaciones, compruebe Silenciar notificaciones para ejecuciones omitidas o Silenciar notificaciones para ejecuciones canceladas al agregar o modificar notificaciones por correo electrónico o notificaciones del sistema.

Nota:

Al seleccionar Silenciar notificaciones para ejecuciones omitidas o Silenciar notificaciones para ejecuciones canceladas para un trabajo, no se filtran las notificaciones configuradas para las tareas de trabajo. Para filtrar todas las notificaciones de ejecuciones omitidas o canceladas, también debe filtrar las notificaciones de nivel de tarea que haya configurado.

Cargas útiles de webhook de HTTP

Si usa un webhook HTTP para enviar notificaciones, a continuación se muestran las cargas útiles de ejemplo enviadas por Azure Databricks al punto de conexión configurado.

Notificación para un evento de inicio de ejecución de trabajo:

{
  "event_type": "jobs.on_start",
  "workspace_id": "your_workspace_id",
  "run": {
    "run_id": "run_id"
  },
  "job": {
    "job_id": "job_id",
    "name": "job_name"
  }
}

Notificación para un evento de inicio de ejecución de tarea:

{
  "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"
  }
}

Al configurar destinos, los webhooks se pueden configurar para los siguientes tipos de eventos:

Código de evento ¿Cuándo se envía?
jobs.on_start Se inicia una ejecución.
jobs.on_success Una ejecución se detiene y se completa en un estado correcto o correcto con errores.
jobs.on_failure Una ejecución se detiene en un estado incorrecto.
jobs.on_duration_warning_threshold_exceeded Una ejecución se ha llevado a cabo durante más de la duración prevista configurada.