Activadores de Pub/Sub

En Cloud Functions, un activador de Pub/Sub permite que se llame a una función en respuesta a los mensajes de Pub/Sub. Cuando especificas un activador de Pub/Sub para una función, también especificas un tema de Pub/Sub. Se llamará a tu función cada vez que se publique un mensaje en el tema especificado.

Para que una función use un activador de Pub/Sub, debe implementarse como una función controlada por eventos:

El repositorio de Eventos de Google contiene recursos adicionales para trabajar con datos de eventos.

Deployment

Puedes especificar un activador de Pub/Sub cuando implementes una función. Consulta Implementa una Cloud Function a fin de obtener instrucciones generales para implementar una función, y consulta la siguiente información adicional específica sobre la configuración de activadores de Pub/Sub durante la implementación.

gcloud

Si implementas mediante la CLI de gcloud, las marcas que se muestran a continuación se usan para configurar los activadores de Pub/Sub:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-topic=YOUR_PUBSUB_TOPIC \
[--retry] \
...

Eventos heredados de Pub/Sub

Las funciones heredadas en Cloud Functions (1st gen) usan un tipo de evento diferente para los activadores de Pub/Sub:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \
--trigger-resource=YOUR_PUBSUB_TOPIC \
...

Este tipo de evento es compatible con funciones heredadas que ya consumen estos eventos. Sin embargo, recomendamos usar la marca --trigger-topic en su lugar, ya que los tipos de eventos heredados podrían quitarse en el futuro.

Console

Si implementas con la consola de Google Cloud, puedes configurar un activador de Pub/Sub en la sección Activador.

  • Para Cloud Functions (2nd gen):

    1. En el campo Tipo de activador, elige Cloud Pub/Sub.
    2. En el campo Tema de Cloud Pub/Sub, elige un tema para que el activador lo supervise. Los mensajes publicados en este tema activarán llamadas a tu función.
    3. Selecciona o desmarca la casilla de verificación Reintentar en caso de error para controlar si Cloud Functions reintenta de forma automática una invocación de función con errores. Consulta Reintenta las funciones controladas por eventos para obtener más información.
    4. Haz clic en Más opciones para realizar una configuración adicional en tu activador:

      • En el campo Tipo de activador, especifica una de las Fuentes de Google, Personalizadas o De terceros:

        • Fuentes de Google te permite especificar activadores para Pub/Sub, Cloud Storage, Firestore y otros proveedores de eventos de Google. En el panel Activador de Eventarc, usa el campo Proveedor de eventos para seleccionar el producto que proporciona el tipo de evento que deseas que active la función. Luego, en el campo Evento, selecciona el evento que deseas usar como activador.

        • La opción Personalizado te permite producir y consumir eventos desde el código de la aplicación. Sigue las instrucciones del panel Activador de Eventarc para crear un canal. Un canal es un recurso que se usa como una canalización para entregar eventos personalizados de los productores a los consumidores. Los eventos personalizados se publican en un canal y un activador de Eventarc se suscribe a esos eventos.

        • La opción Terceros te permite integrarte a proveedores externos a Google que ofrecen una fuente de Eventarc. Consulta los eventos de terceros en Eventarc para obtener más detalles.

      • En el campo Evento, selecciona un evento activador. El valor predeterminado es google.cloud.pubsub.topic.v1.messagePublished.

      • De manera opcional, en el campo Cuenta de servicio, selecciona una cuenta de servicio para usarla como identidad del activador de Eventarc. Consulta Identidad del activador para obtener más información.

    5. Haz clic en Guardar activador.

  • Para Cloud Functions (1st gen):

    1. En el campo Tipo de activador, selecciona Cloud Pub/Sub.
    2. En el campo Selecciona un tema de Cloud Pub/Sub, elige un tema para que el activador lo supervise o selecciona Crear un tema a fin de abrir una ventana. crea un tema nuevo. Cuando se publica un mensaje en el tema de tu función, se activa una llamada a la función.
    3. Selecciona o desmarca la casilla de verificación Reintentar en caso de error para controlar si las llamadas a funciones con errores se reintentan automáticamente. Consulta Reintenta las funciones controladas por eventos para obtener más información.

Próximos pasos