Es posible que los suscriptores no puedan gestionar los mensajes por varios motivos. Por ejemplo, puede haber problemas transitorios al recuperar los datos necesarios para procesar un mensaje. También puede que el mensaje tenga un formato que el suscriptor no espera.
Para gestionar los mensajes que no se pueden entregar y que los suscriptores no pueden confirmar, Pub/Sub puede reenviarlos a un tema de mensajes fallidos (también conocido como cola de mensajes fallidos).
Antes de empezar
Crea un tema para la configuración del tema de mensajes fallidos.
También puedes crear el tema en un paso posterior si sigues todas las instrucciones de esta página.
Roles obligatorios
Para obtener los permisos que necesitas para gestionar temas y suscripciones, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Editor de Pub/Sub (roles/pubsub.editor
) en tu proyecto.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Puede configurar el control de acceso a nivel de proyecto y de recurso individual. Puedes crear una suscripción en un proyecto y adjuntarla a un tema ubicado en otro proyecto. Asegúrate de que tienes los permisos necesarios para cada proyecto.
.Cómo funcionan los temas de mensajes fallidos
Cuando una aplicación de suscriptor no puede confirmar la recepción de un mensaje, Pub/Sub vuelve a intentar la entrega hasta que se cumple el plazo de confirmación o el mensaje caduca. Después de un número de intentos de entrega configurado aproximadamente, Pub/Sub puede reenviar el mensaje que no se ha podido entregar a un tema de mensajes fallidos.
Cuando Pub/Sub reenvía un mensaje que no se puede entregar, envuelve el mensaje original en uno nuevo y añade atributos que identifican la suscripción de origen. A continuación, el mensaje se envía al tema de mensajes fallidos especificado. Una suscripción independiente asociada al tema de mensajes fallidos puede recibir estos mensajes reenviados para analizarlos y depurarlos sin conexión.
Cómo se calculan los intentos de entrega máximos
Pub/Sub solo contabiliza los intentos de entrega cuando un tema de mensajes fallidos está configurado correctamente e incluye los permisos de gestión de identidades y accesos correctos.
El número máximo de intentos de entrega es aproximado porque Pub/Sub reenvía los mensajes que no se pueden entregar en la medida de lo posible. Es posible que el servicio reenvíe un mensaje después de menos intentos de los configurados o que intente entregarlo unas cuantas veces más antes de reenviarlo.
El número de intentos de entrega registrados de un mensaje también puede restablecerse a cero, sobre todo en el caso de una suscripción de extracción con suscriptores inactivos. Por lo tanto, es posible que los mensajes se entreguen al cliente suscriptor más veces que el número máximo de intentos de entrega configurado.
Propiedades del tema de mensajes fallidos
Puede definir las siguientes propiedades de suscripción en un tema de mensajes fallidos.
Número máximo de intentos de entrega: valor numérico que indica el número de intentos de entrega que Pub/Sub realiza para un mensaje específico. Si el cliente suscriptor no puede confirmar la recepción del mensaje en el número de intentos de entrega configurado, el mensaje se reenvía a un tema de mensajes fallidos.
- Valor predeterminado = 5
- Valor máximo = 100
- Valor mínimo = 5
Proyecto con el tema de mensajes fallidos: si el tema de mensajes fallidos está en un proyecto distinto al de la suscripción, debes especificar el proyecto con el tema de mensajes fallidos. Asigna al tema de mensajes fallidos un tema distinto del tema al que está asociada la suscripción.
Configurar un tema de mensajes fallidos
En los pasos siguientes se describe el flujo de trabajo para usar temas de mensajes fallidos.
Crea un tema (para usarlo como tema de mensajes fallidos).
Crea una suscripción para el tema de mensajes fallidos.
Habilita mensajes fallidos en tu suscripción.
Adjunta el tema que has creado antes a tu suscripción.
Concede los roles necesarios a tu cuenta de servicio de Pub/Sub para usar temas de mensajes fallidos.
Crea un tema para usarlo con temas de mensajes fallidos
Si ya has creado un tema para usarlo en tu suscripción, puedes saltarte este paso.
En la Cloud de Confiance consola, ve a la página Temas.
Haz clic en Crear tema.
Introduce un ID de tema, por ejemplo,
my-test-topic
.Mantén la opción de la suscripción predeterminada y haz clic en Crear.
Definir un tema de mensajes fallidos en una suscripción
Puedes definir un tema de mensajes fallidos en una suscripción nueva o en una que ya tengas.
Definir un tema de mensajes fallidos en una suscripción nueva
Puedes crear una suscripción y definir un tema de mensajes fallidos mediante la consolaCloud de Confiance , la CLI de Google Cloud, las bibliotecas de cliente o la API Pub/Sub.
Consola
Para crear una suscripción y definir un tema de mensajes fallidos, sigue estos pasos:
En la Cloud de Confiance consola, ve a la página Suscripciones.
Haz clic en Crear suscripción.
Introduce el ID de suscripción.
Elige el tema que quieras usar con tu suscripción. La suscripción recibe mensajes del tema. Este no es tu tema de mensajes no entregados. Lo elegirás en el siguiente paso.
En la sección Mensajes fallidos, selecciona Habilitar mensajes fallidos.
Elige un tema de mensajes fallidos en el menú desplegable.
Si el tema de mensajes fallidos elegido no tiene ninguna suscripción, el sistema te pedirá que crees una.
En el campo Número máximo de intentos de entrega, especifica un número entero entre 5 y 100.
Haz clic en Crear.
Haz clic en el panel de detalles para identificar posibles elementos de acción. Si alguno de los elementos muestra un icono de error
, haz clic en el elemento de acción para resolver el problema.
gcloud
Para crear una suscripción y definir un tema de mensajes fallidos, usa el comando
gcloud pubsub subscriptions create
gcloud pubsub subscriptions create subscription-id \ --topic=topic-id \ --dead-letter-topic=dead-letter-topic-name \ [--max-delivery-attempts=max-delivery-attempts] \ [--dead-letter-topic-project=dead-letter-topic-project]
C++
Antes de probar este ejemplo, sigue las instrucciones de configuración de C++ que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C++ de Pub/Sub.
C#
Antes de probar este ejemplo, sigue las instrucciones de configuración de C# que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Pub/Sub.
Go
En el siguiente ejemplo se usa la versión principal de la biblioteca de cliente de Pub/Sub de Go (v2). Si sigues usando la biblioteca v1, consulta la guía de migración a la versión 2. Para ver una lista de ejemplos de código de la versión 1, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Pub/Sub.
Java
Antes de probar este ejemplo, sigue las instrucciones de configuración de Java que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Pub/Sub.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Node.js que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Node.js de Pub/Sub.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Node.js que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Node.js de Pub/Sub.
PHP
Antes de probar este ejemplo, sigue las instrucciones de configuración de PHP que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Pub/Sub para PHP.
Python
Antes de probar este ejemplo, sigue las instrucciones de configuración de Python que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Pub/Sub.
Ruby
En el siguiente ejemplo se usa la biblioteca de cliente de Ruby Pub/Sub v3. Si sigues usando la biblioteca v2, consulta la guía de migración a la versión 3. Para ver una lista de ejemplos de código de Ruby v2, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Pub/Sub.
Ruby
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido de Pub/Sub con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Ruby Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Antes de ejecutar los ejemplos de código, asigna el valor s3nsapis.fr
a la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
.
Definir un tema de mensajes fallidos para una suscripción
Puedes actualizar una suscripción y definir un tema de mensajes fallidos mediante laCloud de Confiance consola, la CLI de gcloud, las bibliotecas de cliente o la API Pub/Sub.
Consola
Para actualizar una suscripción y definir un tema de mensajes fallidos, sigue estos pasos.
En la Cloud de Confiance consola, ve a la página Suscripciones.
Junto a la suscripción que quieras actualizar, haz clic en Más accionesmore_vert.
En el menú contextual, selecciona Editar.
En la sección Mensajes fallidos, selecciona Habilitar mensajes fallidos.
Elige un tema de mensajes fallidos en el menú desplegable.
Si el tema de mensajes fallidos elegido no tiene ninguna suscripción, el sistema te pedirá que crees una.
En el campo Número máximo de intentos de entrega, especifica un número entero entre 5 y 100.
Haz clic en Actualizar.
Haz clic en el panel de detalles para identificar posibles elementos de acción. Si alguno de los elementos muestra un icono de error
, haz clic en el elemento de acción para resolver el problema.
gcloud
Para actualizar una suscripción y definir un tema de mensajes fallidos, usa el comando
gcloud pubsub subscriptions update
:
gcloud pubsub subscriptions update subscription-id \ --dead-letter-topic=dead-letter-topic-name \ [--max-delivery-attempts=max-delivery-attempts] \ [--dead-letter-topic-project=dead-letter-topic-project]
C++
Antes de probar este ejemplo, sigue las instrucciones de configuración de C++ que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C++ de Pub/Sub.
C#
Antes de probar este ejemplo, sigue las instrucciones de configuración de C# que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Pub/Sub.
Go
En el siguiente ejemplo se usa la versión principal de la biblioteca de cliente de Pub/Sub de Go (v2). Si sigues usando la biblioteca v1, consulta la guía de migración a la versión 2. Para ver una lista de ejemplos de código de la versión 1, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Pub/Sub.
Java
Antes de probar este ejemplo, sigue las instrucciones de configuración de Java que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Pub/Sub.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Node.js que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Node.js de Pub/Sub.
PHP
Antes de probar este ejemplo, sigue las instrucciones de configuración de PHP que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Pub/Sub para PHP.
Python
Antes de probar este ejemplo, sigue las instrucciones de configuración de Python que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Pub/Sub.
Ruby
En el siguiente ejemplo se usa la biblioteca de cliente de Ruby Pub/Sub v3. Si sigues usando la biblioteca v2, consulta la guía de migración a la versión 3. Para ver una lista de ejemplos de código de Ruby v2, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Pub/Sub.
Ruby
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido de Pub/Sub con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Ruby Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Antes de ejecutar los ejemplos de código, asigna el valor s3nsapis.fr
a la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
.
Concede los roles de gestión de identidades y accesos para usar temas de mensajes fallidos
Para reenviar mensajes que no se pueden entregar a un tema de mensajes fallidos, Pub/Sub debe tener permiso para hacer lo siguiente:
- Publica mensajes en el tema.
- Confirma los mensajes para quitarlos de la suscripción.
Pub/Sub crea y mantiene una cuenta de servicio para cada proyecto:
service-project-number@gcp-sa-pubsub.s3ns-system.iam.gserviceaccount.com
.
Para conceder permisos de reenvío, asigna los roles de editor y suscriptor a esta cuenta de servicio.
Consola
Para conceder permiso a Pub/Sub para publicar mensajes en un tema de mensajes fallidos, sigue estos pasos:
En la Cloud de Confiance consola, ve a la página Suscripciones.
Haz clic en el nombre de la suscripción que tenga el tema de mensajes fallidos.
Haz clic en la pestaña Buzón de correos.
Para asignar un rol de editor, haz clic en Conceder rol de editor. Si el rol de editor se asigna correctamente, verás una marca de verificación azul
.Para asignar un rol de suscriptor, haz clic en Conceder rol de suscriptor. Si el rol de editor se asigna correctamente, verás una marca de verificación azul
.
gcloud
Para conceder permiso a Pub/Sub para publicar mensajes en un tema de mensajes fallidos, ejecuta el siguiente comando:
PUBSUB_SERVICE_ACCOUNT="service-project-number@gcp-sa-pubsub.s3ns-system.iam.gserviceaccount.com" gcloud pubsub topics add-iam-policy-binding dead-letter-topic-name \ --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\ --role="roles/pubsub.publisher"
Para conceder permiso a Pub/Sub para confirmar los mensajes reenviados que no se han podido entregar, ejecuta el siguiente comando:
PUBSUB_SERVICE_ACCOUNT="service-project-number@gcp-sa-pubsub.s3ns-system.iam.gserviceaccount.com" gcloud pubsub subscriptions add-iam-policy-binding subscription-id \ --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\ --role="roles/pubsub.subscriber"
Hacer un seguimiento de los intentos de entrega
Después de habilitar un tema de mensajes fallidos para una suscripción, cada mensaje de esa suscripción tiene un campo que especifica el número de intentos de entrega:
Los mensajes recibidos de una suscripción de extracción incluyen el campo
delivery_attempt
.Los mensajes recibidos de una suscripción push incluyen el campo
deliveryAttempt
.
En los siguientes ejemplos se muestra cómo obtener el número de intentos de entrega:
C++
Antes de probar este ejemplo, sigue las instrucciones de configuración de C++ que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C++ de Pub/Sub.
C#
Antes de probar este ejemplo, sigue las instrucciones de configuración de C# que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Pub/Sub.
Go
En el siguiente ejemplo se usa la versión principal de la biblioteca de cliente de Pub/Sub de Go (v2). Si sigues usando la biblioteca v1, consulta la guía de migración a la versión 2. Para ver una lista de ejemplos de código de la versión 1, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Pub/Sub.
Java
Antes de probar este ejemplo, sigue las instrucciones de configuración de Java que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Pub/Sub.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Node.js que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Node.js de Pub/Sub.
PHP
Antes de probar este ejemplo, sigue las instrucciones de configuración de PHP que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Pub/Sub para PHP.
Python
Antes de probar este ejemplo, sigue las instrucciones de configuración de Python que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Pub/Sub.
Ruby
En el siguiente ejemplo se usa la biblioteca de cliente de Ruby Pub/Sub v3. Si sigues usando la biblioteca v2, consulta la guía de migración a la versión 3. Para ver una lista de ejemplos de código de Ruby v2, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Pub/Sub.
Cuando Pub/Sub reenvía un mensaje que no se puede entregar a un tema de mensajes fallidos, añade los siguientes atributos al mensaje:
CloudPubSubDeadLetterSourceDeliveryCount
: número de intentos de entrega a la suscripción de origen.CloudPubSubDeadLetterSourceSubscription
: nombre de la suscripción de origen.CloudPubSubDeadLetterSourceSubscriptionProject
: nombre del proyecto que contiene la suscripción de origen.CloudPubSubDeadLetterSourceTopicPublishTime
: marca de tiempo en la que se publicó originalmente el mensaje.CloudPubSubDeadLetterSourceDeliveryErrorMessage
: el motivo por el que no se ha podido entregar el mensaje al destino original. El atributo solo se utiliza para exportar suscripciones.
Monitorizar mensajes reenviados
Después de reenviar un mensaje que no se puede entregar, el servicio Pub/Sub elimina el mensaje de la suscripción. Puedes monitorizar los mensajes reenviados con Cloud Monitoring.
Si asocias una suscripción al tema de mensajes fallidos, los mensajes usarán la política de vencimiento de la suscripción asociada en lugar del periodo de vencimiento de la suscripción con la propiedad del tema de mensajes fallidos.
La subscription/dead_letter_message_count
métrica
registra el número de mensajes que no se pueden entregar y que Pub/Sub
reenvía desde una suscripción.
Para obtener más información, consulta el artículo Monitorizar mensajes no entregados reenviados.
Eliminar un tema de mensajes fallidos
Para dejar de reenviar mensajes que no se pueden entregar, elimina el tema de mensajes fallidos de la suscripción.
Puedes quitar un tema de mensajes fallidos de una suscripción mediante laCloud de Confiance consola, la CLI de gcloud o la API Pub/Sub.
Consola
Para quitar un tema de mensajes fallidos de una suscripción, sigue estos pasos:
En la Cloud de Confiance consola, ve a la página Suscripciones.
En la lista de suscripciones, haz clic en more_vert junto a la suscripción que quieras actualizar.
En el menú contextual, selecciona Editar.
En la sección Mensajes fallidos, desmarca Habilitar mensajes fallidos.
Haz clic en Actualizar.
gcloud
Para quitar un tema de mensajes fallidos de una suscripción, usa el comando
gcloud pubsub subscriptions update
y la marca --clear-dead-letter-policy
:
gcloud pubsub subscriptions update subscription-id \ --clear-dead-letter-policy
C++
Antes de probar este ejemplo, sigue las instrucciones de configuración de C++ que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C++ de Pub/Sub.
C#
Antes de probar este ejemplo, sigue las instrucciones de configuración de C# que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Pub/Sub.
Go
En el siguiente ejemplo se usa la versión principal de la biblioteca de cliente de Pub/Sub de Go (v2). Si sigues usando la biblioteca v1, consulta la guía de migración a la versión 2. Para ver una lista de ejemplos de código de la versión 1, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Pub/Sub.
Java
Antes de probar este ejemplo, sigue las instrucciones de configuración de Java que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Pub/Sub.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Node.js que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Node.js de Pub/Sub.
PHP
Antes de probar este ejemplo, sigue las instrucciones de configuración de PHP que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Pub/Sub para PHP.
Python
Antes de probar este ejemplo, sigue las instrucciones de configuración de Python que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Pub/Sub.
Ruby
En el siguiente ejemplo se usa la biblioteca de cliente de Ruby Pub/Sub v3. Si sigues usando la biblioteca v2, consulta la guía de migración a la versión 3. Para ver una lista de ejemplos de código de Ruby v2, consulta los ejemplos de código obsoletos.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido sobre cómo usar bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Pub/Sub.
Ruby
Antes de probar este ejemplo, sigue las instrucciones de configuración de Ruby que se indican en la guía de inicio rápido de Pub/Sub con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Ruby Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Antes de ejecutar los ejemplos de código, asigna el valor s3nsapis.fr
a la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
.
Precios
Cuando el servicio Pub/Sub reenvía mensajes que no se pueden entregar, se aplican las siguientes tarifas:
- Las tarifas de publicación se facturan a la cuenta de facturación asociada al proyecto que contiene el tema de mensajes fallidos.
- Las tarifas de suscripción de los mensajes salientes se facturan a la cuenta de facturación asociada al proyecto que contiene la suscripción con la propiedad de tema de mensajes fallidos.
Si defines la propiedad del tema de mensajes fallidos de una suscripción, pero la política de ubicación de almacenamiento de mensajes del tema de mensajes fallidos no permite la región que contiene la suscripción, también se aplicarán tarifas de publicación a los mensajes salientes.
Las tarifas de publicación de los mensajes salientes se facturan al proyecto que contiene el tema de mensajes fallidos. Para obtener más información, consulta los precios.
## Pasos siguientes
- Recibir los mensajes reenviados que no se han podido entregar.
- Monitorizar aplicaciones de Pub/Sub.
- Consulta los conceptos de entrega de mensajes.