Consulta los conectores compatibles con Application Integration.
Activador de Cloud Pub/Sub
El activador de Cloud Pub/Sub te permite ejecutar tu integración en función de los eventos en tu middleware de Pub/Sub.
Con este activador, puedes ejecutar una integración cada vez que un publicador escribe un mensaje
en el tema que elegiste. El tema puede existir en el mismo proyecto de Google Cloud que la integración.
en otro proyecto de Google Cloud. Cuando se ejecuta este activador, también escribe el mensaje publicado en
la variable de salida CloudPubSubMessage
Según tus requisitos,
puedes usar esta variable en los activadores o las tareas posteriores.
Para aprender a crear una integración de muestra con Application Integration y el activador del activador de Cloud Pub/Sub, consulta Escucha el tema de Cloud Pub/Sub y envía un correo electrónico.
Antes de comenzar
Asegúrate de realizar las siguientes tareas en tu proyecto de Google Cloud antes de configurar el activador de Cloud Pub/Sub.
- Asigna al Administrador de IAM del proyecto (
roles/resourcemanager.projectIamAdmin
). para el usuario que crea este activador. - Habilita la API de Pub/Sub. para el proyecto de Google Cloud que tiene tu integración.
- Confirma que tienes un tema de Pub/Sub. Para crear un tema nuevo de Pub/Sub:
- Ve a la página de temas de Pub/Sub en la consola de Cloud.
- Haga clic en Crear un tema.
- En el campo ID de tema, proporciona un nombre de tema único.
- Haz clic en Guardar.
Para obtener más información sobre cómo administrar el acceso mediante roles de IAM, consulta Control de acceso.
Para obtener información sobre cómo otorgar funciones a las principales, consulta Otorga, cambia y revoca acceso.
Agrega un activador de Cloud Pub/Sub
Para agregar un activador de Cloud Pub/Sub a una integración nueva o existente, sigue los pasos que se indican a continuación:- En la consola de Google Cloud, ve a la página Application Integration.
- En el menú de navegación, haz clic en Integraciones.
Aparecerá la página Integrations List, en la que se enumeran todas las integraciones disponibles en el proyecto de Google Cloud.
- Selecciona una integración existente o haz clic en Crear integración para crear una nueva.
Si creas una integración nueva, haz lo siguiente:
- Ingresa un nombre y una descripción en el panel Create Integration.
- Selecciona una región para la integración.
- Selecciona una cuenta de servicio para la integración. Puedes cambiar o actualizar los detalles de la cuenta de servicio de una integración en cualquier momento desde el panel Integration summary de la barra de herramientas de integración.
- Haz clic en Crear.
Esto abrirá la integración en la página del editor de integración.
- En la barra de navegación del editor de integración, haz clic en Activadores para ver la lista de activadores disponibles.
- Haz clic y coloca el elemento activador de Cloud Pub/Sub en el diseñador.
Configura un activador de Cloud Pub/Sub
Haz clic en el elemento activador de Cloud Pub/Sub en el editor de integración para ver el panel de configuración del activador y, luego, realiza las siguientes tareas:
- Especifica el tema que el activador debe escuchar en el campo Tema de Pub/Sub con el siguiente formato:
projects/PROJECT_ID/topics/TOPIC_ID
Para ver todos los temas disponibles en el proyecto de Google Cloud, consulta la columna Nombre del tema en Temas. También puedes seleccionar un tema de otro proyecto de Google Cloud.
Reemplaza lo siguiente:PROJECT_ID
: Es el proyecto de Google Cloud en el que se crea tu tema.TOPIC_ID
: Es el ID del tema de Pub/Sub. El tema puede estar en el mismo proyecto de Google Cloud que de tu integración o puede estar presente en otro proyecto de Google Cloud.
- Selecciona la cuenta de servicio que quieres usar para invocar la integración. También puedes elegir una variable de configuración que hayas creado en la integración. El valor de la variable de configuración debe ser una dirección de correo electrónico de cuenta de servicio con el siguiente formato:
SERVICE_ACCOUNT_NAME@project-id.iam.gserviceaccount.com
. Por ejemplo,application-integration-invoke@project123.iam.gserviceaccount.com
.Para obtener información sobre cómo crear una variable de configuración, consulta Crea una variable y cómo crear una cuenta de servicio, consulta Crea una cuenta de servicio.
Si eliges una variable de configuración, debes otorgar los roles necesarios a la cuenta de servicio a la que hace referencia la variable de configuración. Para obtener más información sobre cómo otorgar roles, consulta Roles de IAM obligatorios.
Si no hay cuentas de servicio, haz clic en Crear nueva para crear una. en la lista Cuenta de servicio.
De forma predeterminada, la opción de período de vencimiento de las suscripciones está configurada como never expire
. Si quieres establecer el vencimiento con otro valor, en la consola de Google Cloud, ve a la página de suscripciones de Pub/Sub y edita la suscripción.
Roles de IAM necesarios para las cuentas de servicio
Si haces clic en Otorgar cuando selecciones una cuenta de servicio, se proporcionan automáticamente los siguientes roles a las distintas cuentas de servicio.
Cuenta de servicio | Se otorgó el rol de IAM |
---|---|
Cuenta de servicio predeterminada de Application Integration: service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com |
Si el proyecto de Google Cloud del tema de Pub/Sub es diferente del proyecto de Google Cloud de la integración la cuenta de servicio predeterminada necesita el rol Editor de Pub/Sub en el proyecto de Google Cloud del tema. |
Cuenta de servicio que seleccionas para este activador |
Invocador de Application Integration (roles/integrations.integrationInvoker )
|
Resultado del activador
Para cada evento, el activador de Cloud Pub/Sub genera una variable de salida CloudPubSubMessage
que puedes usar en tus tareas descendentes. La variable está en formato JSON y tiene la estructura PubsubMessage
.
Consideraciones
- El tamaño máximo de un mensaje de Pub/Sub es de 10 MB. Para comprender todas las limitaciones de Pub/Sub, consulta las cuotas y límites de Pub/Sub.
- Es posible que Pub/Sub escriba el mismo mensaje más de una vez en un tema. Para comprender este comportamiento de Pub/Sub, consulta Al menos una entrega.
Por lo tanto, debes diseñar tu integración para que sea idempotente, de modo que no permita que un mensaje se escriba más de una vez en un tema.
El campo
message_id
del encabezado del mensaje identifica de forma única un mensaje de Pub/Sub. - Si anulas la publicación de una integración, la suscripción a Pub/Sub no se borra para evitar la pérdida de mensajes. Sin embargo, si borras la versión publicada o todas las versiones de integración de una integración, también se borrará la suscripción a Pub/Sub.
Crea una suscripción con un filtro para tu integración
Si quieres configurar un filtro para que la suscripción a Pub/Sub procese eventos específicos en tu integración, sigue estos pasos:
- Publica la integración con el activador de Cloud Pub/Sub configurado. En este paso, se crea la suscripción en el proyecto de integración.
- En la consola de Google Cloud, ve a la página Suscripciones.
- Abre la suscripción y copia todos los detalles, incluido su nombre.
- Borra la suscripción existente.
- Crea una nueva suscripción con todos los detalles de la suscripción borrada (incluido el nombre) que copiaste en el paso 3 y, además, agrega un filtro en la suscripción nueva.
La suscripción recién creada activa la integración con los mensajes filtrados.
Exclusiones del ANS
El activador de Cloud Pub/Sub depende de la instancia de Pub/Sub
producto. Como esta dependencia es externa a Application Integration, la función Application Integration
Los Términos y Condiciones del Acuerdo de Nivel de Servicio (ANS) se aplican únicamente cuando el
El activador de Cloud Pub/Sub inicia correctamente la ejecución de una integración de active
.
Cuotas y límites
Para obtener información sobre las cuotas y los límites, consulta Cuotas y límites.
¿Qué sigue?
- Obtén información sobre todas las tareas y los activadores.
- Obtén información para probar y publicar una integración.
- Obtén más información sobre el manejo de errores.
- Obtén más información sobre los registros de ejecución de la integración.