En esta página se describe cómo crear y gestionar configuraciones de informes de inventario e informes de inventario generados para obtener un resumen de alto nivel de los metadatos de todos tus objetos en un determinado contenedor. Para obtener una descripción general de los informes de inventario, consulta la documentación sobre los informes de inventario.
Antes de empezar
Obtener los roles necesarios
Para obtener los permisos necesarios para crear y gestionar informes de inventario, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto o en los segmentos de origen y de destino con los que vayas a gestionar los informes de inventario.
Para crear y gestionar configuraciones de informes de inventario, siga estos pasos:
roles/storage.admin
en los segmentos de origen y de destinoroles/storageinsights.admin
en el proyecto
Para leer y descargar informes de inventario, sigue estos pasos:
roles/storage.objectViewer
en el segmento de destinoroles/storageinsights.viewer
en el proyecto
Estos roles predefinidos contienen los permisos necesarios para crear y gestionar informes y configuraciones de inventario. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para crear y gestionar configuraciones de informes de inventario, siga estos pasos:
storage.buckets.get
en el segmento de origenstorage.objects.list
en el segmento de origenstorage.buckets.getObjectInsights
en el segmento de origenstorage.buckets.get
en el segmento de destinostorage.objects.create
en el segmento de destinostorageinsights.reportConfigs.delete
en el proyectostorageinsights.reportConfigs.get
en el proyectostorageinsights.reportConfigs.create
en el proyectostorageinsights.reportConfigs.list
en el proyectostorageinsights.reportConfigs.update
en el proyecto
Para leer y descargar informes de inventario, sigue estos pasos:
storage.objects.get
en el segmento de destinostorageinsights.reportDetails.get
en el proyectostorageinsights.reportDetails.list
en el proyecto
También puedes obtener estos permisos con otros roles predefinidos. Para ver qué roles están asociados a qué permisos, consulta Roles de gestión de identidades y accesos para Cloud Storage.
Para obtener instrucciones sobre cómo usar roles para controlar el acceso a los contenedores, consulta Usar gestión de identidades y accesos. Para obtener instrucciones sobre cómo usar los roles para controlar el acceso a los proyectos, consulta Gestionar el acceso.
Habilitar la API Storage Insights
Consola
Para habilitar la API storageinsights.googleapis.com
, sigue las instrucciones de Habilitar servicios.
Línea de comandos
Para habilitar la API Storage Insights en tu proyecto actual, ejecuta el siguiente comando:
gcloud services enable storageinsights.googleapis.com
Para obtener más información sobre cómo habilitar servicios en un proyecto de Google Cloud , consulta el artículo Habilitar e inhabilitar servicios.
APIs REST
API JSON
Usa la Google Cloud consola o la CLI de Google Cloud para habilitar la API Storage Insights.
Crear una configuración de informe de inventario
Consola
Para crear una configuración de informe de inventario, sigue estos pasos:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de contenedores, haga clic en el nombre del contenedor que quiera usar como contenedor de origen.
En la página Detalles del segmento, haga clic en la pestaña Informes de inventario.
Haga clic en Crear configuración de informe.
En la sección Identifica la configuración del informe, crea un nombre visible para la configuración del informe de inventario. El nombre visible puede contener hasta 256 caracteres.
En la sección Elegir campos de metadatos, seleccione los campos de metadatos que quiera incluir en sus informes de inventario.
Haz clic en Continuar.
En la sección Elige un formato de archivo, seleccione el formato en el que quiera generar los informes de inventario.
En la sección Elige un segmento de destino, selecciona el segmento que quieras usar como segmento de destino.
En la sección Introduce la ruta de destino (opcional), puede especificar una ruta de destino donde se generarán los informes de inventario.
En la sección Opciones de programación, especifique la frecuencia y las fechas de inicio y finalización para generar informes.
Haz clic en Crear.
Se mostrará la página Detalles de configuración del informe. Los metadatos de los informes de inventario generados aparecerán en la página.
Línea de comandos
Para crear una configuración de informe de inventario, ejecute el comando
gcloud storage insights inventory-reports create
:gcloud storage insights inventory-reports create SOURCE_BUCKET_URL \ --csv-separator=SEPARATOR \ --csv-delimiter=DELIMITER \ --[no]-csv-header \ --parquet \ --display-name=DISPLAY_NAME \ --destination=DESTINATION_PATH \ --metadata-fields=METADATA_FIELD \ --schedule-starts=START_DATE \ --schedule-repeats=FREQUENCY \ --schedule-repeats-until=END_DATE
Sustituye:
SOURCE_BUCKET_URL
con la URL del cubo de origen. Por ejemplo,gs://my_example_source_bucket
.SEPARATOR
con el carácter usado para separar los registros en el archivo CSV del informe de inventario. Debe ser\n
o\r\n
. El valor predeterminado es\n
. Opcional. Si se usa la marca--csv-separator
, no se puede usar--parquet
.DELIMITER
con el delimitador que separa los campos del archivo CSV del informe de inventario. El valor puede incluir un carácter y no puede ser el mismo queSEPARATOR
. El valor predeterminado es,
. Opcional. Si se usa--csv-delimiter
, no se puede usar--parquet
.--[no]-csv-header
con la marca que indica si los encabezados se incluyen o no en el archivo CSV del informe de inventario. Usa--csv-header
para incluir encabezados y--no-csv-header
para excluirlos. Si se usa alguna de las dos marcas, no se puede usar--parquet
.DISPLAY_NAME
con el nombre editable de la configuración del informe de inventario. Opcional.--parquet
con la marca que genera informes de inventario en formato Apache Parquet en lugar de CSV. Si se usa, no se pueden usar--csv-delimiter
,--csv-separator
y--[no-]csv-header
.DESTINATION_PATH
con el segmento o la carpeta del segmento en el que se generarán los informes de inventario. Por ejemplo,gs://my_example_destination_bucket
ogs://my_example_destination_bucket/path/to/inventory/report
.Cuando especifica una ruta a una carpeta de un contenedor, puede usar palabras clave en la ruta, que se sustituyen por sus valores correspondientes cuando se genera el informe. De esta forma, puedes generar informes en formato particionado de Hive para cargar o consultar los datos en BigQuery sin necesidad de realizar ningún otro proceso.
METADATA_FIELD
con una lista separada por comas de campos de metadatos que quiera incluir en el informe de inventario.START_DATE
con la fecha UTC en la que quieras empezar a generar informes de inventario. Por ejemplo,2022-01-15
.FREQUENCY
con la frecuencia con la que quiere que se generen los informes de inventario. Los valores sondaily
yweekly
.END_DATE
con la fecha UTC después de la cual quieras dejar de generar informes de inventario. Debe ser un valor posterior aSTART_DATE
. Por ejemplo, si especifica2022-02-15
, los informes de inventario dejarán de generarse a partir del 16 de febrero del 2022.
Bibliotecas de cliente
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
APIs REST
API JSON
Para crear una configuración de informe de inventario, sigue estos pasos:
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Crea un archivo JSON que contenga la siguiente información: todos los campos son obligatorios, a menos que se indique lo contrario:
{ "display_name": "DISPLAY_NAME", "frequency_options": { "frequency": "FREQUENCY", "start_date": "START_DATE", "end_date": "END_DATE", }, "csv_options": { "record_separator": "RECORD_SEPARATOR", "delimiter": "DELIMITER", "header_required": HEADER_REQUIRED }, "object_metadata_report_options": { "metadata_fields": [ "METADATA_FIELD", ... ], "storage_filters": { "bucket": "SOURCE_BUCKET_NAME" }, "storage_destination_options": { "bucket": "DESTINATION_BUCKET_NAME", "destination_path": "DESTINATION_PATH" } } }
Sustituye:
DISPLAY_NAME
con el nombre visible editable de la configuración del informe de inventario. Puede contener hasta 256 caracteres.FREQUENCY
con la frecuencia con la que se generan los informes de inventario. Los valores sonDAILY
yWEEKLY
.START_DATE
con la fecha UTC en la que quieras empezar a generar informes de inventario. No puede ser la fecha actual ni ninguna fecha anterior. El valor debe ser un objeto que contenga las clavesday
,month
yyear
. Por ejemplo:{"day": 15, "month": 8, "year": 2022}
.END_DATE
con la fecha UTC después de la cual quieras dejar de generar informes de inventario. El valor debe ser un objeto que contenga las clavesday
,month
yyear
. Por ejemplo, si especifica{"day": 15, "month": 9, "year": 2022}
, los informes de inventario dejarán de generarse a partir del 16 de septiembre del 2022.RECORD_SEPARATOR
con el carácter que se usa para separar los registros en el archivo CSV del informe de inventario. Debe ser\n
o\r\n
. El valor predeterminado es\n
. Este campo es opcional.DELIMITER
con el delimitador que separa los campos del archivo CSV del informe de inventario. El valor puede incluir un carácter y no puede ser el mismo que el deRECORD_SEPARATOR
. El valor predeterminado es,
. Este campo es opcional.HEADER_REQUIRED
con el valor booleano que indica si se incluyen o no los encabezados en el archivo CSV. Este campo es opcional.SOURCE_BUCKET_NAME
con el nombre del segmento de origen que contiene los objetos de los que quiere generar informes de inventario. Por ejemplo,my_example_bucket
.METADATA_FIELD
con una lista separada por comas de los campos de metadatos que quiera incluir en el informe de inventario.DESTINATION_BUCKET_NAME
con el nombre del segmento de destino donde se generan y almacenan los informes de inventario. Por ejemplo,my_example_destination_bucket
.DESTINATION_PATH
con la ruta del contenedor de destino donde se generan los informes de inventario. Este campo es opcional.Cuando especifica una ruta a una carpeta de un contenedor, puede usar palabras clave en la ruta, que se sustituyen por sus valores correspondientes cuando se genera el informe. De esta forma, puedes generar informes en formato particionado de Hive para cargar o consultar los datos en BigQuery sin necesidad de realizar ningún otro proceso.
Por ejemplo, el siguiente código de muestra crea una configuración de informe de inventario llamada "Example inventory report configuration" ("Configuración de informe de inventario de ejemplo") que genera informes con una frecuencia semanal:
{ "display_name": "Example inventory report configuration", "frequency_options": { "frequency": "WEEKLY", "start_date": { "day": 15, "month": 8, "year": 2022 }, "end_date": { "day": 15, "month": 9, "year": 2022 }, }, "csv_options": { "record_separator": "\n", "delimiter": ",", "header_required": true }, "object_metadata_report_options": { "metadata_fields": [ "project", "name", "bucket" ], "storage_filters": { "bucket": "example_source_bucket" }, "storage_destination_options": { "bucket": "example_destination_bucket" } } }
Para aplicar la configuración del informe de inventario, usa
cURL
para llamar a la API JSON con una solicitudInsert
ReportConfig:curl -X POST --data-binary @JSON_FILE_NAME \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
JSON_FILE_NAME
con la ruta al archivo JSON que has creado en el paso anterior.YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.
Asignar los roles necesarios al agente de servicio
Un agente de servicio a nivel de proyecto se crea automáticamente la primera vez que configuras un informe de inventario. El agente de servicio sigue el formato de nomenclatura
service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com
y
aparece en la
página Gestión de identidades y accesos de la consola Google Cloud
cuando seleccionas la casilla Incluir asignaciones de roles proporcionadas por Google.
Para que Storage Insights pueda generar y escribir informes de inventario, pide a tu administrador que conceda al agente de servicio los siguientes roles de gestión de identidades y accesos:
roles/storage.insightsCollectorService
en el segmento de origen, que incluye los permisosstorage.buckets.getObjectInsights
ystorage.buckets.get
roles/storage.objectCreator
en el segmento de destino, que incluye el permisostorage.objects.create
Para obtener instrucciones sobre cómo conceder roles, consulta el artículo Usar IAM.
Puedes asignar el rol roles/storage.insightsCollectorService
mediante la consola Google Cloud o Google Cloud CLI. Por ejemplo:
gcloud storage buckets add-iam-policy-binding SOURCE_BUCKET_URL \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com \ --role=roles/storage.insightsCollectorService
Una vez que el agente de servicio tenga los permisos necesarios, se tardarán hasta 24 horas en escribir el primer informe de inventario en el contenedor de destino.
Editar una configuración de informe de inventario
Una vez que se ha creado una configuración de informe de inventario, puede modificar determinadas propiedades de la configuración.
Consola
Para editar una configuración de informe de inventario, siga estos pasos:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de segmentos, haga clic en el nombre del segmento de origen que contiene la configuración del informe de inventario que quiere editar.
En la página Detalles del contenedor de tu contenedor de origen, haz clic en la pestaña Informes de inventario.
Haga clic en el nombre de la configuración del informe de inventario que quiera editar.
En la página Detalles de configuración del informe que aparece, edita las propiedades que quieras con el botón
Editar.
Línea de comandos
Para editar una configuración de informe de inventario, siga estos pasos:
Para encontrar el nombre de la configuración del informe de inventario que quieras editar, enumera todas las configuraciones de inventario del segmento de origen mediante el comando
gcloud storage insights inventory-reports list
:gcloud storage insights inventory-reports list \ --source=SOURCE_BUCKET \ --filter=EXPRESSION \ --page-size=SIZE \ --sort-by=FIELD \ --format="yaml(name)"
Sustituye:
SOURCE_BUCKET
con la URL del segmento de origen que contiene la configuración del informe de inventario.EXPRESSION
con un filtro booleano que se aplica a cada elemento de recurso que se va a incluir en la lista. Si la expresión da como resultado True, el elemento se muestra en la lista. Para obtener más información y ejemplos de expresiones de filtro, ejecuta$ gcloud topic filters
.SIZE
con el número máximo de recursos por página. El valor predeterminado es 50.FIELD
con una lista de nombres de claves de campos de recursos separados por comas para ordenar los resultados. El orden predeterminado es ascendente. Añade el prefijo~
a un campo para ordenarlo de forma descendente.
Edite los campos de configuración del informe de inventario que quiera actualizar con el comando
gcloud storage insights inventory-reports update
. En el ejemplo siguiente se actualiza la configuración del informe de inventario para generar informes de inventario a diario en formato Apache Parquet:gcloud storage insights inventory-reports update CONFIG_NAME \ --parquet \ --schedule-repeats="daily"
Bibliotecas de cliente
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
APIs REST
API JSON
Para editar una configuración de informe de inventario, sigue estos pasos:
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Obtén el nombre de la configuración del informe de inventario que quieras editar con
cURL
para llamar a la API JSON con una solicitudGet
ReportConfig:curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.
Si quiere recuperar todas las configuraciones de informes de inventario de un bucket de origen específico, añada el parámetro de consulta
filter
a su solicitud:curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?filter=objectMetadataReportOptions.storageFilters.bucket=BUCKET_NAME" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.BUCKET_NAME
con el nombre del contenedor de origen que contiene las configuraciones de informes de inventario que quiere editar.
Crea un archivo JSON que incluya los cambios que quieras hacer en las propiedades. En el ejemplo siguiente se actualiza la configuración del informe de inventario para generar informes de inventario a diario en formato Apache Parquet:
{ "ReportConfig": { "frequency_options": { "frequency": "DAILY" }, "parquet_options": { } }
Para aplicar la configuración del informe de inventario, usa
cURL
para llamar a la API JSON con una solicitudPatch
ReportConfig:curl --request PATCH \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --data-binary "@JSON_FILE_NAME.json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.REPORT_CONFIG_UUID
con el UUID generado automáticamente de la configuración del informe de inventario.
Mostrar configuraciones de informes de inventario
Consola
Para enumerar las configuraciones de informes de inventario de un contenedor de origen, sigue estos pasos:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de segmentos, haga clic en el nombre del segmento de origen que contenga las configuraciones de informes de inventario que quiera ver.
En la página Detalles del segmento, haga clic en la pestaña Informes de inventario.
Aparecerán las configuraciones de informes de inventario del segmento de origen.
Línea de comandos
Para enumerar todas las configuraciones de inventario de un contenedor de origen, usa el comando gcloud storage insights inventory-reports list
:
gcloud storage insights inventory-reports list \ --source=SOURCE_BUCKET \ --filter=EXPRESSION \ --page-size=SIZE \ --sort-by=FIELD \ --format="yaml(name)"
Sustituye:
SOURCE_BUCKET
con la URL del segmento de origen que contiene la configuración del informe de inventario.EXPRESSION
con un filtro booleano que se aplica a cada elemento de recurso que se va a incluir en la lista. Si la expresión da como resultado True, el elemento se muestra en la lista. Para obtener más información y ejemplos de expresiones de filtro, ejecuta$ gcloud topic filters
.SIZE
con el número máximo de recursos por página. El valor predeterminado es 50.FIELD
con una lista de nombres de claves de campos de recursos separados por comas para ordenar los resultados. El orden predeterminado es ascendente. Añade el prefijo~
a un campo para ordenarlo de forma descendente.
Bibliotecas de cliente
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
APIs REST
API JSON
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Puede enumerar todas las configuraciones de informes de inventario de un proyecto en una ubicación determinada mediante una solicitud para enumerar las configuraciones de informes de inventario:
curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.
Si quiere enumerar todas las configuraciones de informes de inventario de un bucket de origen específico, añada el parámetro de consulta
filter
a su solicitud:curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?filter=objectMetadataReportOptions.storageFilters.bucket=BUCKET_NAME" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.BUCKET_NAME
con el nombre del segmento de origen que contiene las configuraciones de informes de inventario que quiere enumerar.
Descargar un informe de inventario
Consola
Descargar informes individuales
Los informes de inventario se generan y se almacenan como objetos en el contenedor de destino, por lo que puede descargarlos como si fueran objetos normales.
Para descargar un informe de inventario, sigue estos pasos:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de segmentos, haga clic en el nombre del segmento de destino que contiene el informe de inventario que quiere descargar.
En la página Detalles del segmento, comprueba que esté seleccionada la pestaña Objetos.
Haga clic en
Descargar junto al informe de inventario que quiera descargar.
Si no conoces el nombre del contenedor de destino, también puedes descargar un informe de inventario a través de la configuración del informe de inventario a partir del cual se generó:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de segmentos, haga clic en el nombre del segmento de origen que contiene la configuración del informe de inventario que ha generado el informe que quiere descargar.
En la página Detalles del contenedor, haga clic en el nombre de configuración de la configuración del informe de inventario.
En la página Detalles de configuración del informe que aparece, vaya a la sección Historial de informes de inventario y, a continuación, haga clic en la ruta del objeto de destino del informe de inventario que quiera descargar.
Aparecerá la página Detalles del segmento del segmento de destino que contiene el informe de inventario.
Haga clic en
Descargar junto al informe de inventario que quiera descargar.
Descargar fragmentos de informes
Para descargar un informe de inventario que se ha dividido en uno o varios fragmentos, siga estos pasos:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de contenedores, haga clic en el nombre del contenedor de destino que especificó al crear la configuración del informe de inventario.
En la página Detalles del segmento, comprueba si hay un archivo de manifiesto. La presencia de un archivo de manifiesto indica que se han generado todos los fragmentos de un informe de inventario.
Un ejemplo de nombre de archivo de manifiesto es
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json
.En el bucket de destino, haga clic en
Descargar junto al archivo de manifiesto. Anota los nombres de los archivos de partición que quieras descargar del camporeport_shards_file_names
.En el bucket de destino, haga clic en
Descargar junto a los archivos de partición que quiera descargar.
Línea de comandos
Descargar informes individuales
Para descargar un informe de inventario, sigue estos pasos:
Para enumerar todos los informes de inventario que se han generado a partir de una configuración de informe de inventario y recuperar sus
REPORT_DETAIL_ID
, usa el comandogcloud storage insights inventory-reports details list
:gcloud storage insights inventory-reports details list CONFIG_NAME \ --filter=EXPRESSION \ --page-size=SIZE \ --sort-by=FIELD
Sustituye:
CONFIG_NAME
con el nombre único de la configuración del informe de inventario, en el formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID
.EXPRESSION
con un filtro booleano que se aplica a cada elemento de recurso que se va a incluir en la lista. Si la expresión se evalúa como True, se muestra ese elemento. Para obtener más información y ejemplos de expresiones de filtro, ejecuta$ gcloud topic filters
.SIZE
con el número máximo de recursos por página. El valor predeterminado es 50.FIELD
con una lista de nombres de claves de campos de recursos separados por comas para ordenar los resultados. El orden predeterminado es ascendente. Añade el prefijo~
a un campo para ordenarlo de forma descendente.
Si la acción se realiza correctamente, el comando devuelve un resultado similar al siguiente:
REPORT_DETAIL_ID SNAPSHOT_TIME Report_2023-04-10T00-00 2023-04-10T00:53:03Z Report_2023-04-12T00-00 2023-04-12T00:52:54Z Report_2023-04-05T00-00 2023-04-05T00:53:01Z
Para descargar un informe de inventario, primero debe obtener la propiedad
reportPathPrefix
del objeto ReportDetail. Para obtener elreportPathPrefix
de un informe, usa el comandogcloud storage insights inventory-reports details describe
:gcloud storage insights inventory-reports details describe REPORT_DETAIL_NAME
Sustituye
REPORT_DETAIL_NAME
por el nombre del informe de inventario con el formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID
.
Descargar fragmentos de informes
Para descargar un informe de inventario que se ha dividido en uno o varios fragmentos, siga estos pasos:
Descargue el archivo de manifiesto del informe de inventario con el comando
gcloud storage cp
:gcloud storage cp gs://BUCKET_NAME/MANIFEST_FILE_NAME DOWNLOAD_PATH
Sustituye:
BUCKET_NAME
con el nombre del cubo de destino.MANIFEST_FILE_NAME
con el nombre del archivo de manifiesto en el bucket de destino, siguiendo la siguiente convención de nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Donde:
REPORT_CONFIG_UUID
es el UUID generado automáticamente de la configuración del informe de inventario que ha generado los fragmentos del informe que quiere descargar.TARGET_DATETIME
es la fecha y hora en la que se generó el informe de inventario.
Por ejemplo,
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json
.DOWNLOAD_PATH
con la ruta al sistema de archivos donde quieras guardar el informe de inventario. Por ejemplo,./example_report.csv
.
Para descargar un archivo de fragmento, usa el comando
gcloud storage cp
:gcloud storage cp gs://BUCKET_NAME/SHARD_FILE_NAME DOWNLOAD_PATH
Sustituye:
BUCKET_NAME
con el nombre del cubo de destino.SHARD_FILE_NAME
con el nombre codificado como URL del archivo de fragmento que quieras descargar. Por ejemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv
.DOWNLOAD_PATH
con la ruta al sistema de archivos donde quieras guardar el informe de inventario. Por ejemplo,./example_report.csv
.
Bibliotecas de cliente
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
APIs REST
API JSON
Descargar informes individuales
Para descargar un informe de inventario, sigue estos pasos:
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Para enumerar todos los informes de inventario generados por una configuración de informe de inventario, usa
cURL
para llamar a la API JSON con una solicitud para enumerar los detalles del informe de inventario:curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.REPORT_CONFIG_UUID
con el UUID generado automáticamente de la configuración del informe de inventario que ha generado el informe que quieres descargar.
Para obtener los detalles de un informe concreto, usa
cURL
para llamar a la API JSON con una solicitudGet
ReportDetails:curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.REPORT_CONFIG_UUID
con el UUID generado automáticamente de la configuración del informe de inventario que ha generado el informe que quieres descargar.REPORT_DETAIL_ID
con el nombre del informe de inventario que quieras descargar.
Descargar fragmentos de informes
Para descargar un informe de inventario que se ha dividido en uno o varios fragmentos, siga estos pasos:
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Para descargar el archivo de manifiesto del informe de inventario, usa
cURL
para llamar a la API JSON con una solicitudGET
Object:curl -X GET \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/MANIFEST_FILE_NAME?alt=media" \
Sustituye:
BUCKET_NAME
con el nombre del segmento de destino.MANIFEST_FILE_NAME
con el nombre del archivo de manifiesto en el bucket de destino, siguiendo la siguiente convención de nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Donde:
REPORT_CONFIG_UUID
es el UUID generado automáticamente de la configuración del informe de inventario que ha generado los fragmentos del informe que quieres descargar.TARGET_DATETIME
es la fecha en la que se generó el informe de inventario.
Por ejemplo,
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json
.El campo
report_shards_file_names
del archivo de manifiesto contiene los nombres de los fragmentos del informe de inventario que puede descargar.Para descargar los archivos de fragmentos del informe de inventario, usa
curl
para llamar a la API JSON de Cloud Storage con una solicitudGet
Object:curl -X GET \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ -o "DOWNLOAD_PATH" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/SHARD_FILE_NAME?alt=media"
Sustituye:
DOWNLOAD_PATH
con la ruta al sistema de archivos local en el que quieras guardar el objeto. Por ejemplo,Desktop/dog.png
.BUCKET_NAME
con el nombre del cubo de destino que contiene el informe de inventario. Por ejemplo,my-bucket
.SHARD_FILE_NAME
con el nombre codificado como URL del archivo de fragmento que quieras descargar. Por ejemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv
.
Eliminar una configuración de informe de inventario
Consola
Para eliminar una configuración de informe de inventario, siga estos pasos:
- En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.
En la lista de segmentos, haga clic en el nombre del segmento de origen que contiene la configuración del informe de inventario que quiere eliminar.
En la página Detalles del contenedor de tu contenedor de origen, haz clic en la pestaña Informes de inventario.
Haga clic en el nombre de la configuración del informe de inventario que quiera eliminar.
En la página Detalles de configuración del informe que aparece, haz clic en
Eliminar.
Línea de comandos
Para eliminar una configuración de informe de inventario, usa el comando
gcloud storage insights inventory-reports delete
:
gcloud storage insights inventory-reports delete CONFIG_NAME --force
Sustituye CONFIG_NAME
por el nombre único de la configuración del informe de inventario, con el formato projects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID
.
La marca --force
elimina los metadatos de todos los informes de inventario generados por la configuración de informe de inventario especificada. Los objetos del informe de inventario no se eliminarán.
Bibliotecas de cliente
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
APIs REST
API JSON
Para eliminar una configuración de informe de inventario, siga estos pasos:
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Para eliminar una configuración de informe de inventario, usa
cURL
para llamar a la API JSON con una solicitudDelete
ReportConfig:curl --request DELETE \ 'https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID?force=true' \ --header 'Authorization: Bearer $(gcloud auth print-access-token)' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
Sustituye:
YOUR_PROJECT
con el nombre del proyecto en el que se encuentran los contenedores de origen y de destino.LOCATION
con la ubicación de los contenedores de origen y de destino. Por ejemplo,us-west1
.REPORT_CONFIG_UUID
con el UUID generado automáticamente de la configuración del informe de inventario que quieras eliminar.
El parámetro de consulta force
elimina los metadatos de todos los informes de inventario generados por la configuración de informe de inventario indicada.
Los objetos del informe de inventario no se eliminarán.
Opciones avanzadas: generar informes de inventario en formato particionado de Hive
Cuando creas una configuración de informe de inventario, puedes especificar una ruta de destino, que es una ubicación en tu contenedor de destino donde se generarán los informes de inventario. Esto le permite generar informes de inventario en formato particionado de Hive.
Para especificar una ruta de destino, utiliza palabras clave de marcador de posición.
Las palabras clave de la ruta de destino se sustituyen por sus valores correspondientes cuando se genera el informe de inventario. Por ejemplo, la ruta de destino config={{report-config-id}}/date={{date}}
puede resolverse como config=1A34-F2E456-12B456-1C3D/date=2022-05-20
.
Palabras clave de ruta de destino
Puede especificar las palabras clave report-config-id
, date
o datetime
, entre {{ y }}, donde:
report-config-id
es el UUID de la configuración del informe de inventario.date
es la fecha en la que se genera el informe de inventario. Sigue el formato ISO 8601.datetime
es la fecha y la hora en las que se genera el informe de inventario. Sigue el formato ISO 8601.
Las palabras clave se pueden especificar con cualquiera de las siguientes herramientas:
Cuando uses la Google Cloud consola, especifica las palabras clave en la sección Introduce la ruta de destino (opcional). Esta sección aparece cuando crea una configuración de informe de inventario.
Cuando uses Google Cloud CLI, especifica palabras clave de marcador de posición con la marca
--destination
.Cuando uses la API JSON, especifica palabras clave de marcador de posición en el campo
storage_destination_options.destination_path
del objeto ReportConfig.
Control de acceso y seguridad
Las siguientes recomendaciones y consideraciones se refieren a la seguridad y el uso de los informes y las configuraciones de inventario:
Recomendamos que los usuarios con el rol
roles/storage.admin
también tengan los permisosstorageinsights.reportConfigs.*
para que puedan mantener el control sobre el uso de todos los recursos de sus contenedores, como la lectura de objetos y sus metadatos.Le recomendamos que limite el acceso a los recursos de su informe de inventario concediendo los permisos
storageinsights.reportConfigs.*
solo a las personas que los necesiten.Una vez que se ha creado una configuración de informe de inventario, se siguen generando informes de inventario aunque el usuario que creó la configuración ya no tenga los permisos necesarios. Para dejar de generar informes de inventario, puede editar la fecha de finalización en la configuración del informe de inventario o eliminar la configuración por completo.
Siguientes pasos
- Si tienes problemas para generar informes de inventario, consulta la sección Solución de problemas.