Configura las notificaciones por correo electrónico
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Vertex AI Pipelines puede notificarte sobre el resultado correcto o con errores de una ejecución de canalización. Cuando la canalización se cierra, Google Cloud envía un correo electrónico de notificación del estado final a las direcciones de correo electrónico que especifiques.
Antes de compilar una canalización que envíe notificaciones, usa las siguientes instrucciones para configurar tu Google Cloud proyecto y el entorno de desarrollo.
Para preparar tu proyecto de Google Cloud para ejecutar canalizaciones de AA, sigue las instrucciones que figuran en la guía para configurar tu proyecto deGoogle Cloud .
Instala la versión 2 o una versión posterior del SDK de Kubeflow Pipelines.
En el siguiente ejemplo, se muestra cómo configurar las notificaciones por correo electrónico definiendo una tarea de notificación por correo electrónico (notify_email_task) y agregándola al controlador de salida de la canalización (dsl.ExitHandler). Esta tarea de notificación invoca el operador VertexNotificationEmailOp en el componente de notificación por correo electrónico cuando se cierra la canalización.
fromkfpimportdslfromkfpimportcompilerfromgoogle_cloud_pipeline_components.v1.vertex_notification_emailimportVertexNotificationEmailOp@dsl.pipeline(name='PIPELINE_NAME',pipeline_root=PIPELINE_ROOT_PATH,)defTASK_NAME():notify_email_task=VertexNotificationEmailOp(recipients=RECIPIENTS_LIST)withdsl.ExitHandler(notify_email_task):# Add your pipeline tasks here.compiler.Compiler().compile(pipeline_func=notification_email_pipeline,package_path='notification_email_pipeline.yaml')
Reemplaza lo siguiente:
PIPELINE_NAME: Es el nombre de la canalización.
PIPELINE_ROOT_PATH: Especifica un URI de Cloud Storage al que pueda acceder la cuenta de servicio de tus canalizaciones. Los artefactos de las ejecuciones de tus canalizaciones se almacenan en la raíz de la canalización.
La raíz de la canalización se puede configurar como un argumento de la anotación @kfp.dsl.pipeline en la función de canalización, o se puede configurar cuando llamas a create_run_from_job_spec para crear una ejecución de canalización.
TASK_NAME: Es el nombre de la tarea de canalización para la que configuras las notificaciones por correo electrónico.
RECIPIENTS_LIST: Es una lista separada por comas de hasta tres direcciones de correo electrónico a las que se enviará la notificación por correo electrónico.
Agrega las tareas de tu canalización en el cuerpo de la función del controlador de salida dsl.ExitHandler. Si unes las tareas en la función del controlador de salida de esta manera, especificas que el componente de notificación por correo electrónico debe informar el estado de estas tareas cuando se cierra la canalización. Por ejemplo, si falla una tarea dentro del contenido del controlador de salida, la notificación informará el estado como con errores.
Ejemplo de una notificación por correo electrónico
Si configuras las notificaciones por correo electrónico para una canalización con la muestra de código en Envía una notificación desde una canalización, Vertex AI enviará una notificación por correo electrónico similar a la siguiente cuando se cierre la canalización:
Asunto: Trabajo de Vertex Pipelines "PIPELINE_NAME" tarea "TASK_NAME"
De: Notificaciones de Google <notify-noreply@google.com>
Estimado cliente de Vertex AI:
El trabajo de Vertex AI Pipelines "PIPELINE_NAME" tarea "TASK_NAME" finalizó con el siguiente estado: {status}.
Detalles adicionales:
- Proyecto: {project}
- Nombre de la canalización: PIPELINE_NAME
- ID del trabajo de canalización: {pipeline_job_id}
- Hora de inicio: {start_time}
Para ver este trabajo de canalización en la consola de Cloud, usa el siguiente vínculo: {console_link}
Saludos,
El Google Cloud equipo de IA
En este ejemplo:
{status} representa el estado final de la tarea, que puede ser SUCCEEDED, FAILED o CANCELLED.
{project} es el nombre del proyecto.
{pipeline_job_id} es el ID del trabajo de canalización único.
{start_time} representa la hora de inicio de la canalización.
{console_link} es un hipervínculo al trabajo de canalización en la consola de Google Cloud .
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Configure email notifications\n\nVertex AI Pipelines can notify you of the success or failure of a pipeline run. When the pipeline exits, Google Cloud sends a final status notification email to the email addresses that you specify.\n\nThis guide shows how to configure email notifications from a pipeline\nby using the [Email notification\ncomponent](/vertex-ai/docs/pipelines/email-notification-component)\nin the Google Cloud SDK.\n| **Note:** Google retains the email addresses that you send notifications to for up to 14 days for debugging purposes and 30 days for analytics purposes.\n\nBefore you begin\n----------------\n\nBefore you build a pipeline that sends notifications, use the following instructions to set\nup your Google Cloud project and development environment.\n\n1. To get your Google Cloud project ready to run ML pipelines, follow the\n instructions in the guide to [configuring your\n Google Cloud project](/vertex-ai/docs/pipelines/configure-project).\n\n2. Install v2 or later of the Kubeflow Pipelines SDK.\n\n pip install --upgrade \"kfp\u003e=2,\u003c3\"\n\n| **Note:** To upgrade to the latest version of the Kubeflow Pipelines SDK, run the following command: \n| `pip install kfp --upgrade` \n| If an updated version is available, running this command uninstalls KFP and installs the latest version.\\\\\n\n1. To use Vertex AI Python client in your pipelines, [install the\n Vertex AI client libraries v1.7 or later](https://github.com/googleapis/python-aiplatform).\n\n2. To use Vertex AI services in your pipelines, [install the\n Google Cloud Pipeline Components](https://github.com/kubeflow/pipelines/tree/master/components/google-cloud#installation).\n\nSend a notification from a pipeline\n-----------------------------------\n\nThe following example shows how to configure email notifications by defining an email notification task (`notify_email_task`) and adding it to the pipeline's exit handler (`dsl.ExitHandler`). This notification task invokes the `VertexNotificationEmailOp` operator in the email notification component when the pipeline exits. \n\n from kfp import dsl\n from kfp import compiler\n from google_cloud_pipeline_components.v1.vertex_notification_email import VertexNotificationEmailOp\n\n @dsl.pipeline(\n name='\u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e',\n pipeline_root=\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003ePIPELINE_ROOT_PATH\u003c/span\u003e\u003c/var\u003e,\n )\n def \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-nf\"\u003eTASK_NAME\u003c/span\u003e\u003c/var\u003e():\n notify_email_task = VertexNotificationEmailOp(recipients=\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003eRECIPIENTS_LIST\u003c/span\u003e\u003c/var\u003e)\n\n with dsl.ExitHandler(notify_email_task):\n # Add your pipeline tasks here.\n\n compiler.Compiler().compile(pipeline_func=notification_email_pipeline,\n package_path='notification_email_pipeline.yaml')\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e: The name of the pipeline.\n\n- \u003cvar translate=\"no\"\u003ePIPELINE_ROOT_PATH\u003c/var\u003e: Specify a Cloud Storage URI that your\n [pipelines service account can access](/vertex-ai/docs/pipelines/configure-project#service-account). The artifacts of your\n pipeline runs are stored within the pipeline root.\n\n The pipeline root can be set as an argument of the `@kfp.dsl.pipeline`\n annotation on the pipeline function, or it can be set when you call\n `create_run_from_job_spec` to create a pipeline run.\n- \u003cvar translate=\"no\"\u003eTASK_NAME\u003c/var\u003e: The name of the pipeline task for which you're configuring email notifications.\n\n- \u003cvar translate=\"no\"\u003eRECIPIENTS_LIST\u003c/var\u003e: A comma-separated list of up to three email addresses to\n send the notification email to.\n\nAdd your pipeline tasks in the body of the `dsl.ExitHandler` exit handler function. By wrapping the tasks in the exit handler function in this way, you specify that the notification email component should report the status of these tasks when the pipeline exits. For example, if a task within the exit handler's contents fails, then the notification reports the status as failed.\n\nExample of a notification email\n-------------------------------\n\nIf you configure email notifications for a pipeline using the code sample in [Send a notification from a pipeline](#sending-notification-from-pipeline), Vertex AI sends an email notification similar to the following when the pipeline exits:\n\u003e Subject: Vertex Pipelines job \"\u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e\" task \"\u003cvar translate=\"no\"\u003eTASK_NAME\u003c/var\u003e\" \n\u003e From: Google Notifications \\\u003cnotify-noreply@google.com\\\u003e \n\u003e\n\u003e Hello Vertex AI Customer, \n\u003e\n\u003e Vertex AI Pipelines job \"\u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e\" task \"\u003cvar translate=\"no\"\u003eTASK_NAME\u003c/var\u003e\" ended with the following state: {status}. \n\u003e\n\u003e Additional details: \n\u003e - Project: {project} \n\u003e - Pipeline name: \u003cvar translate=\"no\"\u003ePIPELINE_NAME\u003c/var\u003e \n\u003e - Pipeline job ID: {pipeline_job_id} \n\u003e - Start time: {start_time} \n\u003e\n\u003e To view this pipeline job in Cloud Console, use the following link: {console_link} \n\u003e\n\u003e Sincerely, \n\u003e The Google Cloud AI Team \n\nIn this example:\n\n- `{status}` represents the final state of the task, which can be `SUCCEEDED`, `FAILED`, or `CANCELLED`.\n- `{project}` is the project name.\n- `{pipeline_job_id}` is the unique pipeline job ID.\n- `{start_time}` represents the start time for the pipeline.\n- `{console_link}` is a hyperlink to the pipeline job in the Google Cloud console."]]