En esta página, se describe cómo crear y administrar la configuración de los informes de inventario y los informes de inventario generados, para que puedas obtener un resumen de alto nivel de todos los metadatos de tus objetos en un bucket determinado. Para obtener una descripción general de los informes de inventario, consulta la documentación de la descripción general de los informes de inventario.
Antes de comenzar
Obtén las funciones necesarias
A fin de obtener los permisos necesarios para crear y administrar informes de inventario, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto o los buckets de origen y destino con el que administrarás los informes de inventario.
Para crear y administrar configuraciones de informes de inventario, sigue estos pasos:
roles/storage.adminen el bucket de origen y de destinoroles/storageinsights.adminen el proyecto
Para leer y descargar informes de inventario, sigue estos pasos:
roles/storage.objectVieweren el bucket de destinoroles/storageinsights.vieweren el proyecto
Estos roles predefinidos contienen los permisos necesarios para crear y administrar informes y configuraciones de inventario. Para ver los permisos exactos que son necesarios, expande la sección Permisos necesarios:
Permisos necesarios
Para crear y administrar configuraciones de informes de inventario, sigue estos pasos:
storage.buckets.geten el bucket de origenstorage.objects.listen el bucket de origenstorage.buckets.getObjectInsightsen el bucket de origenstorage.buckets.geten el bucket de destinostorage.objects.createen el bucket de destinostorageinsights.reportConfigs.deleteen el proyectostorageinsights.reportConfigs.geten el proyectostorageinsights.reportConfigs.createen el proyectostorageinsights.reportConfigs.listen el proyectostorageinsights.reportConfigs.updateen el proyecto
Para leer y descargar informes de inventario, sigue estos pasos:
storage.objects.geten el bucket de destinostorageinsights.reportDetails.geten el proyectostorageinsights.reportDetails.listen el proyecto
También puedes obtener estos permisos con otros roles predefinidos. Para ver qué roles están asociados con qué permisos, consulta Roles de IAM para Cloud Storage.
Si deseas obtener instrucciones sobre cómo usar roles para controlar el acceso a los buckets, consulta Usa IAM. Si deseas obtener instrucciones sobre cómo usar roles para controlar el acceso a los proyectos, consulta Administra el acceso.
Habilita la API de Storage Insights
Console
Para habilitar la API de storageinsights.googleapis.com, sigue las instrucciones en Habilita servicios.
Línea de comandos
Para habilitar la API de Storage Insights en tu proyecto actual, ejecuta el siguiente comando:
gcloud services enable storageinsights.googleapis.com
Si deseas obtener más detalles para habilitar los servicios de un proyecto de Google Cloud , consulta Habilita e inhabilita servicios.
API de REST
API de JSON
Usa la Google Cloud consola o Google Cloud CLI para habilitar la API de Storage Insights.
Crea una configuración de informes de inventario
Console
Para crear una configuración de informes de inventario, sigue estos pasos:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket que deseas usar como bucket de origen.
En la página Detalles del bucket, haz clic en la pestaña Inventory reports.
Haz clic en Create report configuration.
En la sección Identifica la configuración de tu informe, crea un nombre visible para la configuración de informes de inventario. El nombre visible puede contener hasta 256 caracteres.
En la sección Elige campos de metadatos, selecciona los campos de metadatos que deseas incluir en los informes de inventario.
Haz clic en Continuar.
En la sección Elige un formato de archivo, selecciona el formato de archivo en el que deseas generar informes de inventario.
En la sección Elige un bucket de destino, selecciona el bucket que deseas usar como bucket de destino.
En la sección Ingresar ruta de destino (opcional), puedes especificar una ruta de destino en la que se generarán informes de inventario.
En la sección Opciones de programación, especifica la frecuencia, la fecha de inicio y la fecha de finalización para generar informes.
Haz clic en Crear.
Se muestra la página Report configuration details. Los metadatos de los informes de inventario generados aparecerán en la página.
Línea de comandos
Para crear una configuración de informes de inventario, ejecuta 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
Reemplaza lo siguiente:
SOURCE_BUCKET_URLes la URL del bucket de origen. Por ejemplo,gs://my_example_source_bucketSEPARATORcon el carácter que se usa para separar los registros en el archivo CSV del informe de inventario. Debe ser\no\r\n. El valor predeterminado es\n. Opcional. Si se usa la marca--csv-separator,--parquetno se puede usar.DELIMITERcon el delimitador que separa los campos en el 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-headercon la marca que indica si se incluyen o no encabezados en el archivo CSV del informe de inventario Usa--csv-headerpara incluir encabezados y--no-csv-headerpara excluirlos. Si se usa alguna de las marcas, no se puede usar--parquet.DISPLAY_NAMEes el nombre editable de la configuración de informes de inventario. Opcional.--parquetpor la marca que genera informes de inventario en formato Apache Parquet en lugar de CSV. Si se usa,--csv-delimiter,--csv-separatory--[no-]csv-headerno se pueden usar.DESTINATION_PATHpor el bucket o la carpeta en el bucket en el que se generarán los informes de inventario. Por ejemplo,gs://my_example_destination_bucketogs://my_example_destination_bucket/path/to/inventory/report.Cuando especificas una ruta de acceso a una carpeta dentro de un bucket, puedes usar palabras clave en la ruta de acceso, que se sustituyen por sus valores correspondientes cuando se genera el informe. Esto te permite generar informes en un formato particionado de Hive para que puedas cargar o consultar los datos en BigQuery sin procesamiento adicional.
METADATA_FIELDpor una lista separada por comas de los campos de metadatos que deseas incluir en el informe de inventario.START_DATEcon la fecha UTC en la que deseas comenzar a generar informes de inventario. Por ejemplo,2022-01-15FREQUENCYcon la frecuencia con la que deseas que se generen los informes de inventario. Los valores sondailyoweekly.END_DATEcon la fecha UTC después de la cual deseas dejar de generar informes de inventario. Debe ser un valor después deSTART_DATE. Por ejemplo, si especificas2022-02-15, los informes de inventario ya no se generarán a partir del 16 de febrero de 2022.
Bibliotecas cliente
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Java.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
API de REST
API de JSON
Para crear una configuración de informes de inventario, sigue estos pasos:
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Crea un archivo JSON que contenga la siguiente información, en la que todos los campos sean 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" } } }
Reemplaza lo siguiente:
DISPLAY_NAMEcon el nombre visible editable de la configuración de informes de inventario. Puede contener hasta 256 caracteres.FREQUENCYcon la frecuencia para generar informes de inventario. Los valores sonDAILYoWEEKLY.START_DATEcon la fecha UTC en la que deseas comenzar 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,monthyyear. Por ejemplo:{"day": 15, "month": 8, "year": 2022}.END_DATEcon la fecha UTC después de la cual deseas dejar de generar informes de inventario. El valor debe ser un objeto que contenga las clavesday,monthyyear. Por ejemplo, si especificas{"day": 15, "month": 9, "year": 2022}, los informes de inventario ya no se generarán a partir del 16 de septiembre de 2022.RECORD_SEPARATORcon el carácter que se usa para separar los registros en el archivo CSV del informe de inventario. Debe ser\no\r\n. El valor predeterminado es\n. Este campo es opcional.DELIMITERcon el delimitador que separa los campos en el archivo CSV del informe de inventario. El valor puede incluir un carácter y no puede ser igual alRECORD_SEPARATOR. El valor predeterminado es,. Este campo es opcional.HEADER_REQUIREDcon el valor booleano que indica si los encabezados se incluyen o no en el archivo CSV. Este campo es opcional.SOURCE_BUCKET_NAMEcon el nombre del bucket de origen que contiene los objetos para los que deseas generar informes de inventario. Por ejemplo,my_example_bucket.METADATA_FIELDpor una lista separada por comas de los campos de metadatos que deseas incluir en el informe de inventario.DESTINATION_BUCKET_NAMEpor el nombre del bucket de destino en el que se generan y almacenan los informes de inventario generados. Por ejemplo,my_example_destination_bucket.DESTINATION_PATHpor la ruta del bucket de destino en el que se generan los informes de inventario. Este campo es opcional.Cuando especificas una ruta de acceso a una carpeta dentro de un bucket, puedes usar palabras clave en la ruta de acceso, que se sustituyen por sus valores correspondientes cuando se genera el informe. Esto te permite generar informes en un formato particionado de Hive para que puedas cargar o consultar los datos en BigQuery sin procesamiento adicional.
Por ejemplo, en el siguiente código de muestra, se crea una configuración de informes de inventario llamada “Ejemplo de configuración de informes de inventario” 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 de informes de inventario, usa lo siguiente:
cURLpara llamar a la API de JSON con una solicitud deReportConfigCreate: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" \
Reemplaza lo siguiente:
JSON_FILE_NAMEpor la ruta de acceso al archivo JSON que creaste en el paso anterior.YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1.
Otorga los roles necesarios al agente de servicio:
La primera vez que estableces una configuración de informes de inventario, se crea de forma automática un agente de servicio a nivel de proyecto. El agente de servicio sigue el formato de nombres service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com y aparece en la página de IAM de la consola de Google Cloud cuando seleccionas la casilla de verificación Incluir asignaciones de roles proporcionadas por Google.
Para permitir que las estadísticas de almacenamiento generen y escriban informes de inventario, pídele a tu administrador que otorgue al agente de servicio los siguientes roles de IAM:
roles/storage.insightsCollectorServiceen el bucket de origen, que incluye los permisosstorage.buckets.getObjectInsightsystorage.buckets.getroles/storage.objectCreatoren el bucket de destino, que incluye el permisostorage.objects.create
Si deseas obtener instrucciones para otorgar roles, consulta Usa IAM.
Puedes otorgar el rol roles/storage.insightsCollectorService con la Google Cloud consola 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.insightsCollectorServiceUna vez que se le otorga los permisos necesarios al agente de servicio, la escritura del primer informe de inventario en el bucket de destino puede tardar hasta 24 horas.
Cómo editar la configuración de un informe de inventario
Una vez que se crea una configuración de informe de inventario, puedes modificar ciertas propiedades de la configuración.
Console
Para editar la configuración de un informe de inventario, sigue estos pasos:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket de origen que contiene la configuración del informe de inventario que deseas editar.
En la página Detalles del bucket de tu bucket de origen, haz clic en la pestaña Inventory reports.
Haz clic en el nombre de la configuración del informe de inventario que deseas editar.
En la página Detalles de configuración del informe que aparece, edita las propiedades que deseas mediante el botón Editar.
Línea de comandos
Para editar la configuración de un informe de inventario, sigue estos pasos:
Para encontrar el nombre de la configuración del informe de inventario que deseas editar, enumera todas las opciones de configuración del inventario en el depósito 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)"
Reemplaza lo siguiente:
SOURCE_BUCKETcon la URL del bucket de origen que contiene la configuración de informes de inventario.EXPRESSIONcon un filtro booleano que se aplicará a cada elemento de recurso que se enumerará. Si la expresión evalúa como Verdadero, el elemento aparece en la lista. Para obtener más detalles y ejemplos de expresiones de filtros, ejecuta$ gcloud topic filters.SIZEpor la cantidad máxima de recursos por página. El valor predeterminado es 50.FIELDpor una lista separada por comas de los nombres de claves de campo de recurso para ordenar. El orden predeterminado es ascendente. Agrega un prefijo~a un campo para obtener el orden descendente en ese campo.
Edita los campos de configuración del informe de inventario que deseas actualizar mediante el comando
gcloud storage insights inventory-reports update. En el siguiente ejemplo, se actualiza la configuración del informe de inventario para generar informes de inventario a diario en formato Parquet de Apache:gcloud storage insights inventory-reports update CONFIG_NAME \ --parquet \ --schedule-repeats="daily"
Bibliotecas cliente
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Java.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
API de REST
API de JSON
Para editar la configuración de un informe de inventario, completa los siguientes pasos:
Tener la gcloud CLI instalada e inicializada, lo 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 deseas editar con
cURLpara llamar a la API de JSON con una solicitud deGetReportConfig: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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1.
Si deseas recuperar todas las opciones de configuración de informes de inventario en un bucket de origen específico, agrega el parámetro de consulta
filtera tu 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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1.BUCKET_NAMEcon el nombre del bucket de origen que contiene las opciones de configuración de informes de inventario que deseas editar.
Crea un archivo JSON que incluya cambios en las propiedades que deseas editar. En el siguiente ejemplo, se actualiza la configuración del informe de inventario para generar informes de inventario a diario en formato Parquet de Apache:
{ "ReportConfig": { "frequency_options": { "frequency": "DAILY" }, "parquet_options": { } }
Para aplicar la configuración de informes de inventario, usa lo siguiente:
cURLpara llamar a la API de JSON con una solicitud deReportConfigPatch: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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1REPORT_CONFIG_UUIDcon el UUID generado de forma automática de la configuración de informes de inventario.
Obtén una lista de las configuraciones de informes de inventario
Console
Para obtener una lista de las opciones de configuración del informe de inventario en un bucket de origen, completa los siguientes pasos:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket de origen que contiene la configuración del informe de inventario que deseas editar.
En la página Detalles del bucket, haz clic en la pestaña Inventory reports.
Aparecerán las configuraciones de informe de inventario en el bucket de origen.
Línea de comandos
Puedes obtener una lista de todas las opciones de configuración del inventario en un bucket 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)"
Reemplaza lo siguiente:
SOURCE_BUCKETcon la URL del bucket de origen que contiene la configuración de informes de inventario.EXPRESSIONcon un filtro booleano que se aplicará a cada elemento de recurso que se enumerará. Si la expresión evalúa como Verdadero, el elemento aparece en la lista. Para obtener más detalles y ejemplos de expresiones de filtros, ejecuta$ gcloud topic filters.SIZEpor la cantidad máxima de recursos por página. El valor predeterminado es 50.FIELDpor una lista separada por comas de los nombres de claves de campo de recurso para ordenar. El orden predeterminado es ascendente. Agrega un prefijo~a un campo para obtener el orden descendente en ese campo.
Bibliotecas cliente
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Java.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
API de REST
API de JSON
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Puedes obtener una lista de todas las opciones de configuración de informes de inventario en un proyecto para una ubicación determinada con 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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1.
Si deseas obtener una lista de todas las opciones de configuración de informes de inventario en un bucket de origen específico, agrega el parámetro de consulta
filtera tu 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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1.BUCKET_NAMEcon el nombre del bucket de origen que contiene las opciones de configuración de informes de inventario de las que deseas obtener una lista.
Descarga un informe de inventario
Console
Descarga informes individuales
Los informes de inventario se generan y se almacenan como objetos en el bucket de destino, por lo que puedes descargarlos como lo harías con un objeto normal.
Para descargar un informe de inventario, siga estos pasos:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket de destino que contiene el informe de inventario que deseas descargar.
En la página Detalles del bucket, asegúrate de que la pestaña Objetos esté seleccionada.
Haz clic en Descargar asociado con el informe de inventario que deseas descargar.
Si no conoces el bucket de destino, también puedes descargar un informe de inventario a través de la configuración de informes de inventario a partir de la cual se generó:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket de origen que contiene la configuración de informes de inventario que generó el informe que deseas descargar.
En la página Detalles del bucket, haz clic en el nombre de la configuración de informes de inventario.
En la página Report configuration details que aparecerá, navega a la sección Historial de informes de inventario y, luego, haz clic en la ruta de acceso del objeto de destino del informe de inventario que deseas descargar.
Aparecerá la página Detalles del bucket para el bucket de destino que contiene el informe de inventario.
Haz clic en Descargar asociado con el informe de inventario que deseas descargar.
Descargar fragmentos de informe
Para descargar un informe de inventario que se dividió en uno o más fragmentos, completa los siguientes pasos:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket de destino que especificaste cuando creaste la configuración del informe de inventario.
En la página Detalles del bucket, verifica la presencia de un archivo de manifiesto. La presencia de un archivo de manifiesto indica que se generaron 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, haz clic en Descargar asociado con el archivo de manifiesto. Anota los nombres de los archivos de fragmentación que deseas descargar desde el campo
report_shards_file_names.En el bucket de destino, haz clic en Descargar asociado con los archivos de fragmentación que deseas descargar.
Línea de comandos
Descarga informes individuales
Para descargar un informe de inventario, siga estos pasos:
Para enumerar todos los informes de inventario que generó una configuración de informes de inventario y recuperar su
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
Reemplaza lo siguiente:
CONFIG_NAMEcon el nombre único de la configuración de informes de inventario, en el formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID.EXPRESSIONcon un filtro booleano que se aplicará a cada elemento de recurso que se enumerará. Si la expresión se evalúa como True, se muestra ese elemento. Para obtener más detalles y ejemplos de expresiones de filtros, ejecuta$ gcloud topic filters.SIZEcon la cantidad máxima de recursos por página. El valor predeterminado es 50.FIELDpor una lista separada por comas de los nombres de claves de campo de recurso para ordenar. El orden predeterminado es ascendente. Agrega un prefijo~a un campo para obtener el orden descendente en ese campo.
Si se completa correctamente, el comando muestra 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 debes recuperar la propiedad
reportPathPrefixdel objeto ReportDetail. Para obtener elreportPathPrefixde un informe, usa el comandogcloud storage insights inventory-reports details describe:gcloud storage insights inventory-reports details describe REPORT_DETAIL_NAME
Reemplaza
REPORT_DETAIL_NAMEpor el nombre del informe de inventario en el formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID.
Descargar fragmentos de informe
Para descargar un informe de inventario que se dividió en uno o más fragmentos, completa los siguientes pasos:
Descarga el archivo de manifiesto del informe de inventario mediante el comando
gcloud storage cp:gcloud storage cp gs://BUCKET_NAME/MANIFEST_FILE_NAME DOWNLOAD_PATH
Reemplaza lo siguiente:
BUCKET_NAMEpor el nombre del bucket de destino.MANIFEST_FILE_NAMEpor el nombre del archivo de manifiesto en el bucket de destino, con la siguiente nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Donde:
REPORT_CONFIG_UUIDes el UUID generado de forma automática de la configuración de informes de inventario que generó los fragmentos del informe que deseas descargar.TARGET_DATETIMEes la fecha y la hora en que se generó el informe de inventario.
Por ejemplo,
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json.DOWNLOAD_PATHpor la ruta de acceso al sistema de archivos en el que deseas guardar el informe de inventario. Por ejemplo,./example_report.csv.
Para descargar un archivo de fragmentación, usa el comando
gcloud storage cp:gcloud storage cp gs://BUCKET_NAME/SHARD_FILE_NAME DOWNLOAD_PATH
Reemplaza lo siguiente:
BUCKET_NAMEpor el nombre del bucket de destino.SHARD_FILE_NAMEpor el nombre codificado como URL del archivo de fragmento que deseas descargar. Por ejemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csvDOWNLOAD_PATHpor la ruta de acceso al sistema de archivos en el que deseas guardar el informe de inventario. Por ejemplo,./example_report.csv.
Bibliotecas cliente
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Java.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
API de REST
API de JSON
Descarga informes individuales
Para descargar un informe de inventario, siga estos pasos:
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Enumera todos los informes de inventario generados por una configuración de informes de inventario con
cURLpara llamar a la API de 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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1REPORT_CONFIG_UUIDpor el UUID generado de forma automática de la configuración de informes de inventario que generó el informe que deseas descargar.
Para obtener los detalles de un informe individual, usa
cURLa fin de llamar a la API de JSON con una solicitudGetReportDetails: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" \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1REPORT_CONFIG_UUIDpor el UUID generado de forma automática de la configuración de informes de inventario que generó el informe que deseas descargar.REPORT_DETAIL_IDpor el nombre del informe de inventario que deseas descargar.
Descargar fragmentos de informe
Para descargar un informe de inventario que se dividió en uno o más fragmentos, completa los siguientes pasos:
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Para descargar el archivo de manifiesto del informe de inventario, usa
cURLpara llamar a la API de JSON con una solicitud de objetoGET: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" \
Reemplaza lo siguiente:
BUCKET_NAMEpor el nombre del bucket de destino.MANIFEST_FILE_NAMEpor el nombre del archivo de manifiesto en el bucket de destino, con la siguiente nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Donde:
REPORT_CONFIG_UUIDes el UUID generado de forma automática de la configuración de informes de inventario que generó los fragmentos del informe que deseas descargar.TARGET_DATETIMEes la fecha en 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_namesdel archivo de manifiesto contiene los nombres de los fragmentos del informe de inventario que puedes descargar.Si deseas descargar los archivos de fragmentos del informe de inventario, usa
curlpara llamar a la API de JSON de Cloud Storage con una solicitudGetObject: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"
Reemplaza lo siguiente:
DOWNLOAD_PATHpor la ruta de acceso al sistema de archivos local en el que deseas guardar el objeto. Por ejemplo,Desktop/dog.pngBUCKET_NAMEpor el nombre del bucket de destino que contiene el informe de inventario. Por ejemplo,my-bucketSHARD_FILE_NAMEpor el nombre codificado como URL del archivo de fragmento que deseas descargar. Por ejemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv
Borra una configuración de informes de inventario
Console
Para borrar la configuración de un informe de inventario, completa los siguientes pasos:
- En la consola de Google Cloud , ve a la página Buckets de Cloud Storage.
En la lista de buckets, haz clic en el nombre del bucket de origen que contiene la configuración del informe de inventario que deseas borrar.
En la página Detalles del bucket de tu bucket de origen, haz clic en la pestaña Inventory reports.
Haz clic en el nombre de la configuración del informe de inventario que deseas borrar.
En la página Report configuration details que aparecerá, haz clic en Borrar.
Línea de comandos
Para borrar 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
Reemplaza CONFIG_NAME por el nombre único de la configuración del informe de inventario, en el formato projects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID.
La marca --force borra los metadatos de todos los informes de inventario que generó la configuración de informes de inventario determinada. No se borrarán los objetos del informe de inventario.
Bibliotecas cliente
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Java.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
API de REST
API de JSON
Para borrar la configuración de un informe de inventario, completa los siguientes pasos:
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Si quieres borrar una configuración de informe de inventario, usa
cURLpara llamar a la API de JSON con una solicitudDeleteReportConfig: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' \
Reemplaza lo siguiente:
YOUR_PROJECTpor el nombre del proyecto en el que se encuentran tus buckets de origen y destino.LOCATIONpor la ubicación de los buckets de origen y destino. Por ejemplo,us-west1REPORT_CONFIG_UUIDpor el UUID generado de forma automática de la configuración de informes de inventario que deseas borrar.
El parámetro de consulta force borra los metadatos de todos los informes de inventario que generó la configuración de informes de inventario determinada.
No se borrarán los objetos del informe de inventario.
Avanzado: Genera informes de inventario en un formato particionado de subárbol
Cuando creas una configuración de informes de inventario, puedes especificar una ruta de destino, que es una ubicación en tu bucket de destino en el que se generarán los informes de inventario. Esto te permite generar informes de inventario en formato particionado de Hive.
Especifica una ruta de destino con palabras clave de marcador de posición.
Las palabras clave en 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}} podría resolverse como config=1A34-F2E456-12B456-1C3D/date=2022-05-20.
Palabras clave de la ruta de destino
Puedes especificar las palabras clave report-config-id, date o datetime, incluídas dentro de {{ y }}, donde ocurre lo siguiente:
report-config-ides el UUID de la configuración de informes de inventario.datees la fecha en que se genera el informe de inventario. Sigue el formato ISO 8601.datetimees la fecha y la hora en que se genera el informe de inventario. Sigue el formato ISO 8601.
Las palabras clave se pueden especificar mediante cualquiera de las siguientes herramientas:
Cuando uses la consola de Google Cloud , especifica las palabras clave en la secciónIngresa la ruta de destino (opcional). Esta sección aparece cuando creas una configuración de informes de inventario.
Cuando uses Google Cloud CLI, especifica las palabras clave de marcador de posición con la marca
--destination.Cuando uses la API de JSON, especifica las palabras clave de marcador de posición en el campo
storage_destination_options.destination_pathdel objeto ReportConfig.
Seguridad y control de acceso
Las siguientes recomendaciones y consideraciones se relacionan con la seguridad y el uso de los informes y las configuraciones de inventario:
Recomendamos que los usuarios con el rol
roles/storage.admintambién tengan los permisosstorageinsights.reportConfigs.*para que puedan mantener el control sobre el uso de todos los recursos en sus buckets, como la lectura de objetos y sus metadatos.Te recomendamos que limites el acceso a los recursos de tu informe de inventario mediante la asignación de los permisos
storageinsights.reportConfigs.*solo a las personas necesarias.Una vez que se crea una configuración de informes de inventario, esta continúa generando informes de inventarios, incluso si el usuario que creó la configuración ya no tiene los permisos necesarios. Para dejar de generar informes de inventario, puedes editar la fecha de finalización en la configuración del informe de inventario o borrar la configuración por completo.
¿Qué sigue?
- Si tienes problemas para generar informes de inventario, consulta Solución de problemas a fin de obtener ayuda.