En este documento se describe cómo enumerar un tema de Pub/Sub. Para enumerar un tema, puedes usar la Google Cloud consola, la CLI de gcloud, la biblioteca de cliente o la API Pub/Sub.
Antes de empezar
- Consulta información sobre los temas y el flujo de trabajo de publicación de mensajes.
- Crea un tema.
Roles y permisos necesarios
Para obtener los permisos que necesitas para mostrar temas y gestionarlos, 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 tema o proyecto.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para enumerar temas y gestionarlos. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para enumerar temas y gestionarlos, se necesitan los siguientes permisos:
-
Crear un tema:
pubsub.topics.create
-
Eliminar un tema:
pubsub.topics.delete
-
Para desvincular una suscripción de un tema, sigue estos pasos:
pubsub.topics.detachSubscription
-
Obtener un tema:
pubsub.topics.get
-
Incluir un tema en una lista:
pubsub.topics.list
-
Publicar en un tema:
pubsub.topics.publish
-
Actualizar un tema:
pubsub.topics.update
-
Obtener la política de gestión de identidades y accesos de un tema:
pubsub.topics.getIamPolicy
-
Configura la política de gestión de identidades y accesos de un tema:
pubsub.topics.setIamPolicy
También puedes obtener estos permisos con 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.
Listar un tema
Consola
En la Google Cloud consola, ve a la página Temas de Pub/Sub.
En la página Temas se muestran todos los temas disponibles.
De forma predeterminada, la consola devuelve 50 temas. Puede aumentar este valor para devolver un máximo de 200 temas mediante el desplegable Filas por página. Este interruptor solo aparece en la consola si tienes más de 20 temas en un proyecto.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para ver la lista de temas, usa el comando
gcloud pubsub topics list
:gcloud pubsub topics list
- PROJECT_ID es el ID del proyecto.
De forma predeterminada, se devuelven un máximo de 100 resultados por consulta.
Puede especificar un valor alternativo de hasta 1000 mediante el parámetro de tamaño de página.
Por ejemplo, con Google Cloud CLI, especifica --page-size=1000
.
REST
Para ver la lista de temas, usa el método projects.topics.list
:
Solicitud:
La solicitud debe autenticarse con un token de acceso en el encabezado Authorization
. Para obtener un token de acceso de las credenciales predeterminadas de la aplicación actuales, usa gcloud auth application-default print-access-token
.
GET https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics Authorization: Bearer ACCESS_TOKEN
Donde:
Respuesta:
{ "topics": [ { "name": "projects/PROJECT_ID/topics/mytopic1", ... }, { "name": "projects/PROJECT_ID/topics/mytopic2", ... } ] }
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 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.ts
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.
Siguientes pasos
Elige el tipo de suscripción para tu tema.
Crea o modifica un tema con gcloud CLI.
Crea o modifica un tema con las APIs REST.