En este documento, se describe cómo crear una suscripción a Cloud Storage. Puedes usar la consola de Google Cloud , Google Cloud CLI, la biblioteca cliente o la API de Pub/Sub para crear una suscripción a Cloud Storage.
Antes de comenzar
Antes de leer este documento, asegúrate de estar familiarizado con lo siguiente:
- Cómo funciona una suscripción a Cloud Storage
- Cómo funciona Cloud Storage y cómo crear y administrar buckets de Cloud Storage
- Cómo configurar un tema de mensajes no entregados para controlar las fallas de los mensajes
Roles y permisos requeridos
A continuación, se muestra una lista de lineamientos relacionados con los roles y los permisos:
Para crear una suscripción, debes configurar el control de acceso a nivel del proyecto.
También necesitas permisos a nivel del recurso si tus suscripciones y temas están en proyectos diferentes, como se explica más adelante en esta sección.
Para crear una suscripción a Cloud Storage, el agente de servicio de Pub/Sub o una cuenta de servicio personalizada deben tener permiso para escribir en el bucket específico de Cloud Storage y leer los metadatos del bucket. Para obtener más información sobre cómo otorgar estos permisos, consulta la siguiente sección de este documento.
Para obtener los permisos que necesitas para crear suscripciones de Cloud Storage, pídele a tu administrador que te otorgue el rol de IAM Editor de Pub/Sub (roles/pubsub.editor
) en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para crear suscripciones a Cloud Storage. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear suscripciones a Cloud Storage:
-
Crea una suscripción:
pubsub.subscriptions.create
-
Adjuntar una suscripción a un tema:
pubsub.topics.attachSubscription
-
Extraer de una suscripción:
pubsub.subscriptions.consume
-
Obtener una suscripción:
pubsub.subscriptions.get
-
Cómo enumerar una suscripción:
pubsub.subscriptions.list
-
Actualizar una suscripción:
pubsub.subscriptions.update
-
Borrar una suscripción:
pubsub.subscriptions.delete
-
Obtén la política de IAM de una suscripción:
pubsub.subscriptions.getIamPolicy
-
Configura la política de IAM para una suscripción:
pubsub.subscriptions.setIamPolicy
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Para permitir que una principal de un proyecto cree una suscripción a Cloud Storage en otro proyecto, debes otorgarle el rol de editor de Pub/Sub (roles/pubsub.editor
) en ambos proyectos. Esto proporciona los permisos necesarios para crear la nueva suscripción a Google Cloud y adjuntarla al tema original. El rol de editor de Pub/Sub (roles/pubsub.editor
) en el tema también te ayuda a adjuntar Google Cloud suscripciones en un proyecto diferente al tema.
Asigna roles a cuentas de servicio
Algunos Google Cloud servicios tienen Google Cloudcuentas de servicio administradas que permiten que los servicios accedan a tus recursos. Estas cuentas de servicio se conocen como agentes de servicio. Pub/Sub crea y mantiene un agente de servicio para cada proyecto en el formato service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com
.
Puedes elegir entre permitir que el agente de servicio de Pub/Sub o una cuenta de servicio personalizada escriban en el bucket de Cloud Storage.
Otorgar permiso al agente de servicio de Pub/Sub significa que cualquier usuario que tenga permiso para crear una suscripción en tu proyecto puede escribir en el bucket de Cloud Storage. Si deseas proporcionar un permiso más detallado para escribir en el bucket de Cloud Storage, configura una cuenta de servicio personalizada.
Si deseas obtener más información sobre la IAM de Cloud Storage, consulta Administración de identidades y accesos de Cloud Storage.
Asigna roles de Cloud Storage al agente de servicio de Pub/Sub
Si deseas crear una suscripción a Cloud Storage con el agente de servicio de Pub/Sub, este debe tener permiso para escribir en el bucket específico de Cloud Storage y para leer los metadatos del bucket.
Otorga los roles de creador de objetos de almacenamiento (roles/storage.objectCreator
) y lector de buckets heredados de almacenamiento (roles/storage.legacyBucketReader
) al agente de servicio de Pub/Sub. Puedes otorgar el permiso en un bucket individual o en todo el proyecto.
Bucket
En la Google Cloud consola, ve a la página de Cloud Storage.
Haz clic en el bucket de Cloud Storage al que deseas escribir mensajes.
Se abrirá la página Detalles del bucket.
En la página Detalles del bucket, haz clic en la pestaña Permisos.
En la pestaña Permisos > Ver por principales, haz clic en Otorgar acceso.
Se abrirá la página Otorgar acceso.
En la sección Agregar principales, ingresa el nombre de tu agente de servicio de Pub/Sub para el proyecto que contiene la suscripción.
El formato del agente de servicio es
service-PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com
. Por ejemplo, para un proyecto con PROJECT_NUMBER=112233445566
, el agente de servicio tiene el formato[email protected]
.En el menú desplegable Asignar roles > Seleccionar un rol, ingresa
Creator
y selecciona el rol Creador de objetos de almacenamiento.Haz clic en Agregar otra función.
En el menú desplegable Seleccionar un rol, ingresa
Bucket Reader
y selecciona el rol Lector de buckets heredados de almacenamiento.Haz clic en Guardar.
Proyecto
En la consola de Google Cloud , ve a la página IAM.
En la pestaña Permisos > Ver por principales, haz clic en Otorgar acceso.
Se abrirá la página Otorgar acceso.
En la sección Agregar principales, ingresa el nombre de tu agente de servicio de Pub/Sub.
El formato del agente de servicio es
service-PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com
. Por ejemplo, para un proyecto con PROJECT_NUMBER=112233445566
, el agente de servicio tiene el formato[email protected]
.En el menú desplegable Asignar roles > Seleccionar un rol, ingresa
Storage Admin
y selecciona el rol Administrador de almacenamiento.Haz clic en Guardar.
Asigna roles de Cloud Storage a una cuenta de servicio personalizada
Si deseas usar una cuenta de servicio personalizada para escribir en un bucket de Cloud Storage, debes establecer los siguientes permisos:
- La cuenta de servicio personalizada debe tener permiso para escribir en el bucket de Cloud Storage específico y para leer los metadatos del bucket.
- El agente de servicio de Pub/Sub debe tener el permiso
iam.serviceAccounts.getAccessToken
en la cuenta de servicio personalizada. - El usuario que crea la suscripción debe tener el permiso
iam.serviceAccounts.actAs
en la cuenta de servicio personalizada.
Crea la cuenta de servicio y otorga permisos con los siguientes pasos:
Crea la cuenta de servicio personalizada. La cuenta de servicio debe estar en el mismo proyecto que la suscripción.
Otorga los roles de creador de objetos de almacenamiento (
roles/storage.objectCreator
) y lector de buckets heredados de almacenamiento (roles/storage.legacyBucketReader
) a la cuenta de servicio personalizada.Puedes otorgar el permiso de cuenta de servicio en una sola tabla del proyecto o en todas las tablas del proyecto. Para ello, consulta la sección correspondiente en Cómo asignar Google Cloud roles al agente de servicio de Pub/Sub. En el procedimiento, reemplaza la dirección de correo electrónico del agente de servicio de Pub/Sub por la dirección de correo electrónico personalizada de la cuenta de servicio.
Otórgale al agente de servicio de Pub/Sub el permiso
iam.serviceAccounts.getAccessToken
en la cuenta de servicio personalizada o en todas las cuentas de servicio del proyecto. Para otorgar este permiso, asigna el rolroles/iam.serviceAccountTokenCreator
al agente de servicio de Pub/Sub.Elige el método adecuado según tus requisitos.
Cuenta de servicio
En la consola de Google Cloud , ve a la página Cuentas de servicio.
Ingresa el nombre de la cuenta de servicio personalizada en Filtro.
Selecciona la cuenta de servicio de la lista.
Haz clic en Principales con acceso.
Haz clic en Otorgar acceso.
En la sección Agregar principales, ingresa el nombre de tu agente de servicio de Pub/Sub para el proyecto que contiene la suscripción. El formato del agente de servicio es
service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com
. Por ejemplo, para un proyecto conproject-number=112233445566
, el agente de servicio tiene el formato[email protected]
.En el menú desplegable Seleccionar un rol, ingresa
Service Account
y selecciona el rol Creador de tokens de cuenta de servicio.Haz clic en Guardar.
Proyecto
En la consola de Google Cloud , ve a la página IAM.
Haz clic en Otorgar acceso.
En la sección Agregar principales, ingresa el nombre de tu cuenta de servicio personalizada.
En la sección Asignar roles, haz clic en Agregar otro rol.
En el menú desplegable Seleccionar un rol, ingresa
Service Account
y selecciona el rol Creador de tokens de cuenta de servicio.Haz clic en Guardar.
Si creaste la cuenta de servicio personalizada, ya deberías tener el permiso iam.serviceAccounts.actAs
necesario. Si necesitas otorgarle a otra persona el permiso en la cuenta de servicio, haz lo siguiente:
En la consola de Google Cloud , ve a la página Cuentas de servicio.
Ingresa el nombre de la cuenta de servicio personalizada en Filtro.
Selecciona la cuenta de servicio de la lista.
Haz clic en Principales con acceso.
Haz clic en Otorgar acceso.
En la sección Agregar principales, ingresa el nombre de la cuenta a la que deseas otorgar acceso.
En el menú desplegable Seleccionar un rol, ingresa
Service Account
y selecciona el rol Usuario de cuenta de servicio.Haz clic en Guardar.
Propiedades de la suscripción a Cloud Storage
Cuando configuras una suscripción a Cloud Storage, debes especificar las propiedades comunes a todos los tipos de suscripción y algunas propiedades adicionales específicas de la suscripción a Cloud Storage.
Propiedades comunes de suscripción
Obtén información sobre las propiedades de suscripción comunes que puedes configurar en todas las suscripciones.
Nombre del bucket
Ya debe existir un bucket de Cloud Storage antes de crear una suscripción a Cloud Storage.
Los mensajes se envían en lotes y se almacenan en el bucket de Cloud Storage. Un solo lote o archivo se almacena como un objeto en el bucket.
El bucket de Cloud Storage debe tener inhabilitada la opción Pago del solicitante.
Para crear un bucket de Cloud Storage, consulta Crea buckets.
Prefijo, sufijo y fecha y hora del nombre de archivo
Los archivos de Cloud Storage de salida que genera la suscripción a Cloud Storage se almacenan como objetos en el bucket de Cloud Storage. El nombre del objeto almacenado en el bucket de Cloud Storage tiene el siguiente formato: <file-prefix><UTC-date-time>_<uuid><file-suffix>
.
En la siguiente lista, se incluyen detalles del formato de archivo y los campos que puedes personalizar:
<file-prefix>
es el prefijo del nombre de archivo personalizado. Este paso es opcional,<UTC-date-time>
es una cadena personalizable generada automáticamente según el momento en que se crea el objeto.<uuid>
es una cadena aleatoria generada automáticamente para el objeto.<file-suffix>
es el sufijo del nombre de archivo personalizado. Este paso es opcional, El sufijo del nombre del archivo no puede terminar en “/”.Puedes cambiar el prefijo y el sufijo del nombre de archivo:
Por ejemplo, si el valor del prefijo del nombre de archivo es
prod_
y el valor del sufijo del nombre de archivo es_archive
, un nombre de objeto de muestra esprod_2023-09-25T04:10:00+00:00_uN1QuE_archive
.Si no especificas el prefijo ni el sufijo del nombre del archivo, el nombre del objeto almacenado en el bucket de Cloud Storage tiene el formato:
<UTC-date-time>_<uuid>
.Los requisitos para nombrar objetos de Cloud Storage también se aplican al prefijo y al sufijo del nombre del archivo. Para obtener más información, consulta Acerca de los objetos de Cloud Storage.
Puedes cambiar cómo se muestran la fecha y la hora en el nombre del archivo:
Coincidencias de fecha y hora obligatorias que puedes usar solo una vez: año (
YYYY
oYY
), mes (MM
), día (DD
), hora (hh
), minuto (mm
), segundo (ss
). Por ejemplo,YY-YYYY
oMMM
no son válidos.Coincidencias opcionales que puedes usar solo una vez: separador de fecha y hora (
T
) y compensación de zona horaria (Z
o+00:00
).Elementos opcionales que puedes usar varias veces: guion (
-
), guion bajo (_
), dos puntos (:
) y barra diagonal (/
).Por ejemplo, si el valor del formato de fecha y hora del nombre de archivo es
YYYY-MM-DD/hh_mm_ssZ
, un nombre de objeto de muestra esprod_2023-09-25/04_10_00Z_uNiQuE_archive
.Si el formato de fecha y hora del nombre del archivo termina en un carácter que no es un comparador, ese carácter reemplazará el separador entre
<UTC-date-time>
y<uuid>
. Por ejemplo, si el valor del formato de fecha y hora del nombre de archivo esYYYY-MM-DDThh_mm_ss-
, un nombre de objeto de muestra esprod_2023-09-25T04_10_00-uNiQuE_archive
.
Procesamiento de archivos por lotes
Las suscripciones a Cloud Storage te permiten decidir cuándo quieres crear un nuevo archivo de salida que se almacena como un objeto en el bucket de Cloud Storage. Pub/Sub escribe un archivo de salida cuando se cumple una de las condiciones de procesamiento por lotes especificadas. Las siguientes son las condiciones de procesamiento por lotes de Cloud Storage:
Duración máxima del lote de almacenamiento. Este es un parámetro de configuración obligatorio. La suscripción a Cloud Storage escribe un nuevo archivo de salida si se supera el valor especificado de duración máxima. Si no especificas el valor, se aplica un valor predeterminado de 5 minutos. Los siguientes son los valores aplicables para la duración máxima:
- Valor mínimo = 1 minuto
- Valor predeterminado = 5 minutos
- Valor máximo = 10 minutos
Cantidad máxima de bytes por lotes de almacenamiento. Este es un parámetro de configuración opcional. La suscripción a Cloud Storage escribe un nuevo archivo de salida si se supera el valor especificado de bytes máximos. Los siguientes son los valores aplicables para los bytes máximos:
- Valor mínimo = 1 KB
- Valor máximo = 10 GiB
Mensajes por lotes de almacenamiento máximos. Este es un parámetro de configuración opcional. La suscripción a Cloud Storage escribe un nuevo archivo de salida si se supera la cantidad máxima de mensajes especificada. Los siguientes son los valores aplicables para los mensajes máximos:
- Valor mínimo = 1,000
Por ejemplo, puedes configurar la duración máxima en 6 minutos y los bytes máximos en 2 GB. Si, en el cuarto minuto, el archivo de salida alcanza un tamaño de 2 GB, Pub/Sub finaliza el archivo anterior y comienza a escribir en uno nuevo.
Una suscripción a Cloud Storage puede escribir en varios archivos de un bucket de Cloud Storage de forma simultánea. Si configuraste tu suscripción para crear un archivo nuevo cada 6 minutos, es posible que observes que se crean varios archivos de Cloud Storage cada 6 minutos.
En algunas situaciones, Pub/Sub puede comenzar a escribir en un archivo nuevo antes de la hora configurada por las condiciones de procesamiento por lotes de archivos. Un archivo también puede superar el valor de bytes máximos si la suscripción recibe mensajes más grandes que el valor de bytes máximos.
Formato de archivo
Cuando creas una suscripción a Cloud Storage, puedes especificar el formato de los archivos de salida que se almacenarán en un bucket de Cloud Storage como Texto o Avro.
Texto: Los mensajes se almacenan como texto sin formato. Un carácter de salto de línea separa un mensaje del mensaje anterior en el archivo. Solo se almacenan las cargas útiles de los mensajes, no los atributos ni otros metadatos.
Avro: Los mensajes se almacenan en formato binario de Apache Avro. Cuando seleccionas Avro, puedes habilitar las siguientes propiedades adicionales:
Escribir metadatos: Esta opción te permite almacenar los metadatos del mensaje junto con el mensaje. Los metadatos, como los campos
subscription_name
,message_id
,publish_time
yattributes
, se escriben en campos de nivel superior en el objeto Avro de salida, mientras que todas las demás propiedades del mensaje, excepto los datos (por ejemplo, un ordering_key, si está presente), se agregan como entradas en el mapaattributes
.Si se inhabilitan los metadatos de escritura, solo se escribe la carga útil del mensaje en el objeto Avro de salida. Este es el esquema Avro para los mensajes de salida con los metadatos de escritura inhabilitados:
{ "type": "record", "namespace": "com.google.pubsub", "name": "PubsubMessage", "fields": [ { "name": "data", "type": "bytes" } ] }
Este es el esquema de Avro para los mensajes de salida con los metadatos de escritura habilitados:
{ "type": "record", "namespace": "com.google.pubsub", "name": "PubsubMessageWithMetadata", "fields": [ { "name": "subscription_name", "type": "string" }, { "name": "message_id", "type": "string" }, { "name": "publish_time", "type": { "type": "long", "logicalType": "timestamp-micros" } }, { "name": "attributes", "type": { "type": "map", "values": "string" } }, { "name": "data", "type": "bytes" } ] }
Usar el esquema de tema: Esta opción permite que Pub/Sub use el esquema del tema de Pub/Sub al que se adjunta la suscripción cuando se escriben archivos Avro.
Cuando uses esta opción, recuerda verificar los siguientes requisitos adicionales:
El esquema del tema debe estar en formato Apache Avro.
Si están habilitados usar el esquema de tema y escribir metadatos, el esquema de tema debe tener un objeto Record en su raíz. Pub/Sub expandirá la lista de campos del registro para incluir los campos de metadatos. Como resultado, el registro no puede contener ningún campo con el mismo nombre que los campos de metadatos (
subscription_name
,message_id
,publish_time
oattributes
).
Cuenta de servicio
Tienes las siguientes opciones para escribir mensajes en una tabla de BigQuery o un bucket de Cloud Storage:
Configura una cuenta de servicio personalizada para que solo los usuarios que tengan el permiso
iam.serviceAccounts.actAs
en la cuenta de servicio puedan crear una suscripción que escriba en la tabla o el bucket. Un ejemplo de rol que incluye el permisoiam.serviceAccounts.actAs
es el rol de usuario de cuenta de servicio (roles/iam.serviceAccountUser
).Usa el agente de servicio de Pub/Sub predeterminado que permite que cualquier usuario con la capacidad de crear suscripciones en el proyecto cree una suscripción que escriba en la tabla o el bucket. El agente de servicio de Pub/Sub es la configuración predeterminada cuando no especificas una cuenta de servicio personalizada.
Crea una suscripción a Cloud Storage
Console
-
En la consola de Google Cloud , ve a la página Suscripciones.
-
Haz clic en Crear suscripción.
-
En el campo ID de suscripción, ingresa un nombre.
Para obtener información sobre cómo asignar un nombre a una suscripción, consulta los Lineamientos para asignar un nombre a un tema o una suscripción.
-
Elige o crea un tema desde el menú desplegable.
La suscripción recibe mensajes del tema.
Para obtener información sobre cómo crear un tema, consulta Crea y administra temas.
-
Selecciona Tipo de entrega como Escribir en Cloud Storage.
-
En el bucket de Cloud Storage, haz clic en Explorar.
-
Puedes seleccionar un bucket existente de cualquier proyecto adecuado.
-
También puedes hacer clic en el ícono de crear y seguir las instrucciones en pantalla para crear un bucket nuevo.
Después de crear el bucket, selecciónalo para la suscripción a Cloud Storage.
Para obtener más información sobre cómo crear un bucket, consulta Crea buckets.
Cuando especificas el bucket, Pub/Sub busca los permisos adecuados en el bucket para el agente de servicio de Pub/Sub. Si hay problemas de permisos, verás un mensaje similar al siguiente:
Unable to verify if the Pub/Sub service agent has write permissions on this bucket. You may be lacking permissions to view or set permissions
. -
-
Si tienes problemas con los permisos, haz clic en Establecer permiso y sigue las instrucciones en pantalla.
Como alternativa, sigue las instrucciones que se indican en Asigna roles de Cloud Storage al agente de servicio de Pub/Sub.
-
En Formato de archivo, selecciona Texto o Avro.
Si seleccionas Avro, también puedes especificar de manera opcional si deseas almacenar los metadatos del mensaje en el resultado.
Para obtener más información sobre las dos opciones, incluida la opción de metadatos del mensaje para el formato Avro, consulta Formato de archivo.
-
Opcional: Puedes especificar el prefijo, el sufijo y la fecha y hora del nombre del archivo para todos los archivos que se escribirán en el bucket de Cloud Storage. Un archivo se almacena como un objeto en el bucket.
Para obtener más información sobre cómo configurar el prefijo, el sufijo y la fecha y hora del archivo, consulta Prefijo, sufijo y fecha y hora del nombre de archivo.
-
Para procesamiento por lotes de archivos, especifica un tiempo máximo que debe transcurrir antes de crear un archivo nuevo.
De manera opcional, también puedes establecer el tamaño máximo de archivo o la cantidad máxima de mensajes para los archivos.
Para obtener más información sobre ambas opciones, consulta Ejecución por lotes de archivos.
-
Te recomendamos que habilites Dead lettering para controlar las fallas de los mensajes.
Para obtener más información, consulta Temas de mensajes no entregados.
-
Puedes mantener el resto de los parámetros de configuración con sus valores predeterminados y hacer clic en Crear.
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 crear una suscripción a Cloud Storage, ejecuta el comando
gcloud pubsub subscriptions create
.gcloud pubsub subscriptions create SUBSCRIPTION_ID \ --topic=TOPIC_ID \ --cloud-storage-bucket=BUCKET_NAME \ --cloud-storage-file-prefix=CLOUD_STORAGE_FILE_PREFIX \ --cloud-storage-file-suffix=CLOUD_STORAGE_FILE_SUFFIX \ --cloud-storage-file-datetime-format=CLOUD_STORAGE_FILE_DATETIME_FORMAT \ --cloud-storage-max-duration=CLOUD_STORAGE_MAX_DURATION \ --cloud-storage-max-bytes=CLOUD_STORAGE_MAX_BYTES \ --cloud-storage-max-messages=CLOUD_STORAGE_MAX_MESSAGES \ --cloud-storage-output-format=CLOUD_STORAGE_OUTPUT_FORMAT \ --cloud-storage-write-metadata --cloud-storage-use-topic-schema
Si deseas usar una cuenta de servicio personalizada, proporciónala como un argumento adicional:
gcloud pubsub subscriptions create SUBSCRIPTION_ID \ --topic=TOPIC_ID \ --cloud-storage-bucket=BUCKET_NAME \ --cloud-storage-file-prefix=CLOUD_STORAGE_FILE_PREFIX \ --cloud-storage-file-suffix=CLOUD_STORAGE_FILE_SUFFIX \ --cloud-storage-file-datetime-format=CLOUD_STORAGE_FILE_DATETIME_FORMAT \ --cloud-storage-max-duration=CLOUD_STORAGE_MAX_DURATION \ --cloud-storage-max-bytes=CLOUD_STORAGE_MAX_BYTES \ --cloud-storage-max-messages=CLOUD_STORAGE_MAX_MESSAGES \ --cloud-storage-output-format=CLOUD_STORAGE_OUTPUT_FORMAT \ --cloud-storage-write-metadata --cloud-storage-use-topic-schema --cloud-storage-service-account-email=SERVICE_ACCOUNT_NAME
En el comando, solo se requieren
SUBSCRIPTION_ID
, la marca--topic
y la marca--cloud-storage-bucket
. Las marcas restantes son opcionales y se pueden omitir.Reemplaza lo siguiente:
SUBSCRIPTION_ID
: Es el nombre o el ID de tu nueva suscripción a Cloud Storage.TOPIC_ID
: Es el nombre o el ID de tu tema.BUCKET_NAME
: Especifica el nombre de un bucket existente. Por ejemplo,prod_bucket
El nombre del bucket no debe incluir el ID del proyecto. Para crear un bucket, consulta Crea buckets.CLOUD_STORAGE_FILE_PREFIX
: Especifica el prefijo del nombre de archivo de Cloud Storage. Por ejemplo:log_events_
.CLOUD_STORAGE_FILE_SUFFIX
: Especifica el sufijo del nombre de archivo de Cloud Storage. Por ejemplo:.txt
.CLOUD_STORAGE_FILE_DATETIME_FORMAT
: Especifica el formato de fecha y hora para el nombre del archivo de Cloud Storage. Por ejemplo,YYYY-MM-DD/hh_mm_ssZ
CLOUD_STORAGE_MAX_DURATION
: Es la duración máxima que puede transcurrir antes de que se cree un archivo nuevo de Cloud Storage. El valor debe ser de entre 1 m y 10 m. Por ejemplo:5m
.CLOUD_STORAGE_MAX_BYTES
: Es la cantidad máxima de bytes que se pueden escribir en un archivo de Cloud Storage antes de crear uno nuevo. El valor debe estar comprendido entre 1 KB y 10 GB. Por ejemplo:20MB
.CLOUD_STORAGE_MAX_MESSAGES
: Es la cantidad máxima de mensajes que se pueden escribir en un archivo de Cloud Storage antes de crear uno nuevo. El valor debe ser mayor o igual que 1,000. Por ejemplo,100000
CLOUD_STORAGE_OUTPUT_FORMAT
: Es el formato de salida de los datos escritos en Cloud Storage. Los valores son los siguientes:text
: Los mensajes se escriben como texto sin procesar, separados por una línea nueva.avro
: Los mensajes se escriben como un binario de Avro.--cloud-storage-write-metadata
y--cloud-storage-use-topic-schema
solo afectan a las suscripciones con el formato de salidaavro
.
- SERVICE_ACCOUNT_NAME: Especifica el nombre de la cuenta de servicio que se usará para escribir en Cloud Storage.
C++
Antes de probar esta muestra, sigue las instrucciones de configuración de C++ que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de C++ de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
C#
Antes de probar esta muestra, sigue las instrucciones de configuración de C# que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de C# de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Go
Antes de probar esta muestra, sigue las instrucciones de configuración de Go que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Go de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Java
Antes de probar esta muestra, sigue las instrucciones de configuración de Java que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Java de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Node.js
Node.js
PHP
Antes de probar esta muestra, sigue las instrucciones de configuración de PHP que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de PHP de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración de Python que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Python de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Supervisa una suscripción a Cloud Storage
Cloud Monitoring proporciona varias métricas para supervisar las suscripciones.
Para obtener una lista de todas las métricas disponibles relacionadas con Pub/Sub y sus descripciones, consulta la documentación de supervisión de Pub/Sub.
También puedes supervisar las suscripciones desde dentro de Pub/Sub.
¿Qué sigue?
Soluciona problemas relacionados con una suscripción a Cloud Storage.
Obtén información sobre Cloud Storage.
Revisa los precios de Pub/Sub, incluida la suscripción a Cloud Storage.