Nesta página, descrevemos como criar e gerenciar configurações de relatório de inventário e relatórios de inventário gerados para que você possa receber um resumo de alto nível de todos os metadados dos objetos em um determinado bucket. Para uma visão geral dos relatórios de inventário, consulte a documentação de visão geral dos relatórios de inventário do Storage Insights.
Antes de começar
Acessar os papéis necessários
A fim de ter as permissões necessárias para criar e gerenciar relatórios de inventário, peça que o administrador conceda a você os seguintes papéis do IAM no projeto ou nos buckets de origem e destino com que você gerenciará os relatórios de inventário.
Para criar e gerenciar configurações de relatórios de inventário:
roles/storage.admin
nos buckets de origem e de destinoroles/storageinsights.admin
no projeto
Para ler e fazer o download de relatórios de inventário:
roles/storage.objectViewer
no bucket de destinoroles/storageinsights.viewer
no projeto
Esses papéis predefinidos contêm as permissões necessárias para criar e gerenciar relatórios e configurações de inventário. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
Para criar e gerenciar configurações de relatórios de inventário:
storage.buckets.get
no bucket de origemstorage.objects.list
no bucket de origemstorage.buckets.getObjectInsights
no bucket de origemstorage.buckets.get
no bucket de destinostorage.objects.create
no bucket de destinostorageinsights.reportConfigs.delete
no projetostorageinsights.reportConfigs.get
no projetostorageinsights.reportConfigs.create
no projetostorageinsights.reportConfigs.list
no projetostorageinsights.reportConfigs.update
no projeto
Para ler e fazer o download de relatórios de inventário:
storage.objects.get
no bucket de destinostorageinsights.reportDetails.get
no projetostorageinsights.reportDetails.list
no projeto
Também é possível conseguir essas permissões com outros papéis predefinidos. Para conferir quais papéis estão associados a quais permissões, consulte Papéis do IAM para o Cloud Storage.
Para instruções sobre como usar papéis para controlar o acesso a buckets, consulte Usar o IAM. Para ver instruções sobre como usar papéis para controlar o acesso a projetos, consulte Gerenciar o acesso.
Ativar a API Storage Insights
Console
Para ativar a API storageinsights.googleapis.com
, siga as
instruções em Como ativar serviços.
Linha de comando
Para ativar a API Storage Insights no projeto atual, execute o seguinte comando:
gcloud services enable storageinsights.googleapis.com
Para mais detalhes sobre como ativar serviços em um projeto do Google Cloud, consulte Como ativar e desativar serviços.
APIs REST
API JSON
Use o console do Google Cloud ou a Google Cloud CLI para ativar a API Storage Insights.
Criar uma configuração de relatório de inventário
Console
Para criar uma configuração de um relatório de inventário, siga estas etapas:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket que você quer usar como o bucket de origem.
Na página Detalhes do bucket, clique na guia Relatórios de inventário.
Clique em Criar configuração de relatório.
Na seção Identifique a configuração do relatório, crie um nome de exibição para a configuração do relatório de inventário. O nome de exibição pode conter até 256 caracteres.
Na seção Escolher campos de metadados, selecione os campos de metadados que você quer incluir nos seus relatórios de inventário.
Clique em Continuar.
Na seção Escolher um formato de arquivo, selecione o formato em que você quer gerar relatórios de inventário.
Na seção Escolha um bucket de destino, selecione o bucket que você quer usar como um bucket de destino.
Na seção Inserir caminho de destino (opcional), é possível especificar um caminho de destino em que os relatórios de inventário serão gerados.
Na seção Opções de programação, especifique a frequência, a data de início e a data de término para gerar os relatórios.
Clique em Criar.
A página Detalhes de configuração do relatório é exibida. Os metadados dos relatórios de inventário gerados serão exibidos na página.
Linha de comando
Para criar uma configuração de relatório de inventário, execute o 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
Substitua:
SOURCE_BUCKET_URL
pelo URL do bucket de origem. Por exemplo,gs://my_example_source_bucket
.SEPARATOR
pelo caractere usado para separar os registros no arquivo CSV do relatório de inventário.\n
: precisa ser\r\n
ou . O valor padrão é\n
. Opcional. Se a sinalização--csv-separator
for usada, não será possível usar--parquet
.DELIMITER
pelo delimitador que separa os campos no arquivo CSV do relatório de inventário. O valor pode incluir um caractere e não pode ser o mesmo valor deSEPARATOR
. O valor padrão é,
. Opcional. Se--csv-delimiter
for usado, não será possível usar--parquet
.--[no]-csv-header
pela sinalização que indica se os cabeçalhos estão incluídos no arquivo CSV do relatório de inventário. Use--csv-header
para incluir cabeçalhos e--no-csv-header
para excluí-los. Se qualquer uma das sinalizações for usada,--parquet
não poderá ser usado.DISPLAY_NAME
pelo nome editável da configuração de relatório de inventário. Opcional.--parquet
pela sinalização que gera relatórios de inventário no formato Apache Parquet em vez de CSV. Se usado,--csv-delimiter
,--csv-separator
e--[no-]csv-header
não podem ser usados.DESTINATION_PATH
pelo bucket ou pasta no bucket em que os relatórios de inventário serão gerados. Por exemplo,gs://my_example_destination_bucket
ougs://my_example_destination_bucket/path/to/inventory/report
.Ao especificar um caminho para uma pasta em um bucket, é possível usar palavras-chave no caminho, que são substituídas por seus valores correspondentes quando o relatório é gerado. Isso permite gerar relatórios em um formato particionado do Hive para carregar ou consultar os dados no BigQuery sem processamento adicional.
METADATA_FIELD
por uma lista separada por vírgulas de campos de metadados que você quer incluir no relatório de inventário.START_DATE
pela data em que você quer começar a gerar relatórios de inventário. Por exemplo,2022-01-15
.FREQUENCY
pela frequência com que você quer que os relatórios de inventário sejam gerados. Os valores sãodaily
ouweekly
.END_DATE
pela data após a qual você quer parar de gerar relatórios de inventário. Precisa ser um valor posterior aSTART_DATE
. Por exemplo, se você especificar2022-02-15
, os relatórios de inventário não serão mais gerados a partir de 16 de fevereiro de 2022.
Bibliotecas de cliente
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Para criar uma configuração de um relatório de inventário, siga estas etapas:
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Crie um arquivo JSON que contenha as seguintes informações, em que todos os campos são obrigatórios, a menos que especificado de outra forma:
{ "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" } } }
Substitua:
DISPLAY_NAME
pelo nome de exibição editável da configuração de relatório de inventário. Pode conter até 256 caracteres.FREQUENCY
pela frequência de geração de relatórios de inventário. Os valores sãoDAILY
ouWEEKLY
.START_DATE
pela data em que você quer começar a gerar relatórios de inventário. Não pode ser a data atual ou qualquer data passada. O valor precisa ser um objeto contendo as chavesday
,month
eyear
. Por exemplo,{"day": 15, "month": 8, "year": 2022}
.END_DATE
pela data após a qual você quer parar de gerar relatórios de inventário. O valor precisa ser um objeto que contenha as chavesday
,month
eyear
. Por exemplo, se você especificar{"day": 15, "month": 9, "year": 2022}
, os relatórios de inventário não serão mais gerados a partir de 16 de setembro de 2022.RECORD_SEPARATOR
pelo caractere usado para separar os registros no arquivo CSV do relatório de inventário.\n
: precisa ser\r\n
ou . O valor padrão é\n
. Este campo é opcional.DELIMITER
pelo delimitador que separa os campos no arquivo CSV do relatório de inventário. O valor pode incluir um caractere e não pode ser igual aoRECORD_SEPARATOR
. O valor padrão é,
. Este campo é opcional.HEADER_REQUIRED
pelo booleano que indica se os cabeçalhos estão incluídos no arquivo CSV. Este campo é opcional.SOURCE_BUCKET_NAME
pelo nome do bucket de origem que contém os objetos para os quais você quer gerar relatórios de inventário. Por exemplo,my_example_bucket
.METADATA_FIELD
por uma lista separada por vírgulas de campos de metadados que você quer incluir no relatório de inventário.DESTINATION_BUCKET_NAME
pelo nome do bucket de destino em que os relatórios de inventário gerados são gerados e armazenados. Por exemplo,my_example_destination_bucket
.DESTINATION_PATH
pelo caminho no bucket de destino em que os relatórios de inventário gerados são armazenados. Este campo é opcional.Ao especificar um caminho para uma pasta em um bucket, é possível usar palavras-chave no caminho, que são substituídas por seus valores correspondentes quando o relatório é gerado. Isso permite gerar relatórios em um formato particionado do Hive para carregar ou consultar os dados no BigQuery sem processamento adicional.
O exemplo de código a seguir cria uma configuração de relatório de inventário chamada "Exemplo de configuração de relatório de inventário" que gera relatórios com uma frequência 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 a configuração do relatório de inventário, use
cURL
para chamar a API JSON com uma solicitaçãoInsert
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" \
Substitua:
JSON_FILE_NAME
pelo caminho para o arquivo JSON criado na etapa anterior.YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.
Conceder os papéis necessários ao agente de serviço
Um
agente de serviço para envolvidos no projeto
é criado automaticamente na primeira vez que você define uma configuração
de relatório de inventário. O agente de serviço segue o formato de nomenclatura
service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com
e
aparece na
página do IAM no console do Google Cloud
quando você seleciona a caixa de seleção Incluir concessões de funções fornecidas pelo Google.
Para permitir que o Storage Insights gere e grave relatórios de inventário, peça ao administrador para conceder ao agente de serviço os seguintes papéis do IAM:
roles/storage.insightsCollectorService
no bucket de origem, que inclui as permissõesstorage.buckets.getObjectInsights
estorage.buckets.get
roles/storage.objectCreator
no bucket de destino, que inclui a permissãostorage.objects.create
.
Para instruções sobre como conceder papéis, consulte Usar IAM.
É possível conceder o papel roles/storage.insightsCollectorService
usando o console do Google Cloud ou a CLI do Google Cloud. Exemplo:
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
Depois que o agente de serviço recebe as permissões necessárias, pode levar até 24 horas para gravar o primeiro relatório de inventário no bucket de destino.
Editar uma configuração de relatório de inventário
Depois de criar uma configuração de relatório de inventário, é possível modificar determinadas propriedades dela.
Console
Para editar a configuração de um relatório de inventário, siga as etapas abaixo:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket de origem que contém a configuração do relatório de inventário que você quer editar.
Na página Detalhes do bucket do bucket de origem, clique na guia Relatórios de inventário.
Clique no nome da configuração do relatório de inventário que você quer editar.
Na página Detalhes da configuração do relatório exibida, edite as propriedades desejadas usando o botão Editar
.
Linha de comando
Para editar a configuração de um relatório de inventário, siga as etapas abaixo:
Para encontrar o nome da configuração do relatório de inventário que você quer editar, liste todas as configurações de inventário no bucket de origem usando o 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)"
Substitua:
SOURCE_BUCKET
pelo URL do bucket de origem que contém a configuração de relatório de inventário.EXPRESSION
por um filtro booleano aplicado a cada item de recurso a ser listado. Se a expressão avaliar como verdadeiro, o item será listado. Para mais detalhes e exemplos de expressões de filtro, execute$ gcloud topic filters
.SIZE
pelo número máximo de recursos por página. O padrão é 50.FIELD
por uma lista separada por vírgulas de nomes de chaves de campos de recursos para ordenação. A ordem padrão é crescente. Adicione um prefixo ao campo com~
para ordem decrescente nesse campo.
Edite os campos de configuração do relatório de inventário que você quer atualizar usando o comando
gcloud storage insights inventory-reports update
. O exemplo a seguir atualiza a configuração do relatório de inventário para gerar relatórios de inventário diariamente no formato Apache Parquet:gcloud storage insights inventory-reports update CONFIG_NAME \ --parquet \ --schedule-repeats="daily"
Bibliotecas de cliente
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Para editar a configuração de um relatório de inventário, siga estas etapas:
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Encontre o nome da configuração de relatório de inventário que você quer editar usando
cURL
para chamar a API JSON com uma solicitaçãoGet
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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.
Se você quiser recuperar todas as configurações de relatório de inventário em um bucket de origem específico, anexe o parâmetro de consulta
filter
à solicitação: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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.BUCKET_NAME
pelo nome do bucket de origem que contém as configurações do relatório de inventário que você quer editar.
Crie um arquivo JSON que inclua alterações nas propriedades que você quer editar. O exemplo a seguir atualiza a configuração do relatório de inventário para gerar relatórios de inventário diariamente no formato Apache Parquet:
{ "ReportConfig": { "frequency_options": { "frequency": "DAILY" }, "parquet_options": { } }
Para aplicar a configuração do relatório de inventário, use
cURL
para chamar a API JSON com uma solicitaçãoPatch
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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
pelo UUID gerado automaticamente da configuração de relatório de inventário.
Liste configurações de relatório de inventário
Console
Para listar as configurações do relatório de inventário em um bucket de origem, conclua as etapas abaixo:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket de origem que contém as configurações do relatório de inventário que você quer visualizar.
Na página Detalhes do bucket, clique na guia Relatórios de inventário.
As configurações do relatório de inventário no bucket de origem são exibidas.
Linha de comando
É possível listar todas as configurações de inventário em um bucket de origem usando o 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)"
Substitua:
SOURCE_BUCKET
pelo URL do bucket de origem que contém a configuração de relatório de inventário.EXPRESSION
por um filtro booleano aplicado a cada item de recurso a ser listado. Se a expressão avaliar como verdadeiro, o item será listado. Para mais detalhes e exemplos de expressões de filtro, execute$ gcloud topic filters
.SIZE
pelo número máximo de recursos por página. O padrão é 50.FIELD
por uma lista separada por vírgulas de nomes de chaves de campos de recursos para ordenação. A ordem padrão é crescente. Adicione um prefixo ao campo com~
para ordem decrescente nesse campo.
Bibliotecas de cliente
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.É possível listar todas as configurações de relatórios de inventário em um projeto para um determinado local usando uma solicitação para listar configurações de relatórios de inventário:
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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.
Se você quiser listar todas as configurações de relatório de inventário em um bucket de origem específico, anexe o parâmetro de consulta
filter
à solicitação: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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.BUCKET_NAME
pelo nome do bucket de origem que contém as configurações do relatório de inventário que você quer listar.
Fazer o download de um relatório de inventário
Console
Download de relatórios individuais
Os relatórios de inventário são gerados e armazenados como objetos no bucket de destino. Assim, é possível fazer o download deles como o de um objeto normal.
Para fazer o download de um relatório de inventário, siga estas etapas:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket de destino que contém o relatório de inventário que você quer fazer o download.
Na página Detalhes do bucket, verifique se a guia Objetos está selecionada.
Clique em Download
associado ao relatório de inventário que você quer fazer o download.
Se você não sabe o bucket de destino, também pode fazer o download de um relatório de inventário usando a configuração do relatório de inventário que o gerou:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket de origem que contém a configuração do relatório de inventário que gerou o relatório que você quer fazer o download.
Na página Detalhes do bucket, clique no nome da configuração do relatório de inventário.
Na página Detalhes de configuração do relatório exibida, navegue até a seção Histórico de relatórios de inventário e clique no caminho do objeto de destino do relatório de inventário que você quer fazer o download.
A página Detalhes do bucket é exibida para o bucket de destino que contém o relatório de inventário.
Clique em Download
associado ao relatório de inventário que você quer fazer o download.
Download de fragmentos de relatório
Para fazer o download de um relatório de inventário que foi dividido em um ou mais fragmentos, conclua as seguintes etapas:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket de destino que você especificou ao criar a configuração do relatório de inventário.
Na página Detalhes do bucket, verifique se há um arquivo de manifesto. A presença de um arquivo de manifesto indica que todos os fragmentos de um relatório de inventário foram gerados.
Um exemplo de nome de arquivo de manifesto é
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json
.No bucket de destino, clique em
Download associado ao arquivo de manifesto. Anote os nomes dos arquivos de fragmento de que você quer fazer o download do camporeport_shards_file_names
.No bucket de destino, clique em
Download associado aos arquivos de fragmento de que você quer fazer o download.
Linha de comando
Download de relatórios individuais
Para fazer o download de um relatório de inventário, siga estas etapas:
Para listar todos os relatórios de inventário que foram gerados por uma configuração de relatório de inventário e recuperar seus
REPORT_DETAIL_ID
, use o comandogcloud storage insights inventory-reports details list
:gcloud storage insights inventory-reports details list CONFIG_NAME \ --filter=EXPRESSION \ --page-size=SIZE \ --sort-by=FIELD
Substitua:
CONFIG_NAME
pelo nome exclusivo da configuração de relatório de inventário, no formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID
.EXPRESSION
por um filtro booleano aplicado a cada item de recurso a ser listado. Se a expressão for avaliada como verdadeira, o item será listado. Para ver mais detalhes e exemplos de expressões de filtro, execute$ gcloud topic filters
.SIZE
pelo número máximo de recursos por página. O padrão é 50.FIELD
por uma lista separada por vírgulas de nomes de chaves de campos de recursos para ordenação. A ordem padrão é crescente. Adicione um prefixo ao campo com~
para ordem decrescente nesse campo.
Se for bem-sucedido, o comando retornará uma saída semelhante a esta:
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 fazer o download de um relatório de inventário, primeiro é necessário recuperar a propriedade
reportPathPrefix
do objeto ReportDetail. Para acessar oreportPathPrefix
de um relatório, use o comandogcloud storage insights inventory-reports details describe
:gcloud storage insights inventory-reports details describe REPORT_DETAIL_NAME
Substitua
REPORT_DETAIL_NAME
pelo nome do relatório de inventário no formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID
.
Download de fragmentos de relatório
Para fazer o download de um relatório de inventário que foi dividido em um ou mais fragmentos, conclua as seguintes etapas:
Faça o download do arquivo de manifesto do relatório de inventário usando o comando
gcloud storage cp
:gcloud storage cp gs://BUCKET_NAME/MANIFEST_FILE_NAME DOWNLOAD_PATH
Substitua:
BUCKET_NAME
pelo nome do bucket de destino.MANIFEST_FILE_NAME
pelo nome do arquivo de manifesto no bucket de destino, com a seguinte convenção de nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Em que:
REPORT_CONFIG_UUID
é o UUID gerado automaticamente da configuração de relatório de inventário que gerou os fragmentos de relatório de que você quer fazer o download.TARGET_DATETIME
é a data e hora em que o relatório de inventário foi gerado.
Por exemplo,
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json
.DOWNLOAD_PATH
com o caminho para o sistema de arquivos em que você quer salvar o relatório de inventário. Por exemplo,./example_report.csv
.
Para fazer o download de um arquivo de fragmento, use o comando
gcloud storage cp
:gcloud storage cp gs://BUCKET_NAME/SHARD_FILE_NAME DOWNLOAD_PATH
Substitua:
BUCKET_NAME
pelo nome do bucket de destino.SHARD_FILE_NAME
pelo nome codificado por URL do arquivo de fragmento de que você quer fazer o download. Por exemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv
.DOWNLOAD_PATH
com o caminho para o sistema de arquivos em que você quer salvar o relatório de inventário. Por exemplo,./example_report.csv
.
Bibliotecas de cliente
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Download de relatórios individuais
Para fazer o download de um relatório de inventário, siga estas etapas:
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Liste todos os relatórios de inventário gerados por uma configuração de relatório de inventário usando
cURL
para chamar a API JSON com uma solicitação para listar detalhes do relatório de inventário: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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
pelo UUID gerado automaticamente da configuração de relatório de inventário que gerou o relatório que você quer fazer o download.
Para ver os detalhes de um relatório individual, use
cURL
para chamar a API JSON com uma solicitação ReportDetailsGet
: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" \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
pelo UUID gerado automaticamente da configuração de relatório de inventário que gerou o relatório que você quer fazer o download.REPORT_DETAIL_ID
pelo nome do relatório de inventário que você quer fazer o download.
Download de fragmentos de relatório
Para fazer o download de um relatório de inventário que foi dividido em um ou mais fragmentos, conclua as seguintes etapas:
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Para fazer o download do arquivo de manifesto do relatório de inventário, use
cURL
para chamar a API JSON com uma solicitação 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" \
Substitua:
BUCKET_NAME
pelo nome do bucket de destino.MANIFEST_FILE_NAME
pelo nome do arquivo de manifesto no bucket de destino, com a seguinte convenção de nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Em que:
REPORT_CONFIG_UUID
é o UUID gerado automaticamente da configuração de relatório de inventário que gerou os fragmentos de relatório de que você quer fazer o download.TARGET_DATETIME
é a data em que o relatório de inventário foi gerado.
Por exemplo,
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json
.O campo
report_shards_file_names
do arquivo de manifesto contém os nomes dos fragmentos do relatório de inventário sujeitos a download.Para fazer o download dos arquivos de fragmento do relatório de inventário, use
curl
para chamar a API Cloud Storage JSON com uma solicitação do objetoGet
: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"
Substitua:
DOWNLOAD_PATH
pelo caminho para o sistema de arquivos local em que você quer salvar o objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
pelo nome do bucket de destino que contém o relatório de inventário. Por exemplo,my-bucket
.SHARD_FILE_NAME
pelo nome codificado por URL do arquivo de fragmento de que você quer fazer o download. Por exemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv
.
Excluir uma configuração de relatório de inventário
Console
Para excluir a configuração de um relatório de inventário, siga estas etapas:
- No console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket de origem que contém a configuração do relatório de inventário que você quer excluir.
Na página Detalhes do bucket do bucket de origem, clique na guia Relatórios de inventário.
Clique no nome da configuração do relatório de inventário que você quer excluir.
Na página Detalhes de configuração do relatório exibida, clique em Excluir
.
Linha de comando
Para excluir uma configuração de relatório de inventário, use o
comando
gcloud storage insights inventory-reports delete
:
gcloud storage insights inventory-reports delete CONFIG_NAME --force
Substitua CONFIG_NAME
pelo nome exclusivo da
configuração do relatório de inventário, no formato
projects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID
.
A sinalização --force
exclui os metadados de todos os relatórios de inventário gerados pela configuração de relatório de inventário especificada. Os objetos de relatório de inventário em si não serão excluídos.
Bibliotecas de cliente
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Para excluir a configuração de um relatório de inventário, siga estas etapas:
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Para excluir uma configuração de relatório de inventário, use
cURL
para chamar a API JSON com uma solicitaçãoDelete
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' \
Substitua:
YOUR_PROJECT
pelo nome do projeto em que os buckets de origem e de destino residem.LOCATION
pelo local dos buckets de origem e de destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
pelo UUID gerado automaticamente da configuração de relatório de inventário que você quer excluir.
O parâmetro de consulta force
exclui os metadados de todos os relatórios de inventário gerados pela configuração de relatório de inventário especificada.
Os objetos de relatório de inventário em si não serão excluídos.
Avançado: gerar relatórios de inventário em um formato particionado do Hive
Ao criar uma configuração de relatório de inventário, é possível especificar um caminho de destino, que é um local no bucket de destino em que os relatórios de inventário serão gerados. Isso permite que você gere relatórios de inventário em um formato Hive particionado.
Especifique um caminho de destino usando palavras-chave de marcador de posição.
As palavras-chave no caminho de destino são substituídas pelos valores correspondentes
quando o relatório de inventário é gerado. Por exemplo, o caminho de
destino
config={{report-config-id}}/date={{date}}
pode ser resolvido para config=1A34-F2E456-12B456-1C3D/date=2022-05-20
.
Palavras-chave do caminho de destino
É possível especificar as palavras-chave report-config-id
, date
ou datetime
entre {{ e
}}, em que:
report-config-id
é o UUID da configuração de relatório de inventário.date
é a data em que o relatório de inventário é gerado. Segue o formato ISO 8601.datetime
é a data e a hora em que o relatório de inventário é gerado. Segue o formato ISO 8601.
As palavras-chave podem ser especificadas usando qualquer uma das seguintes ferramentas:
Ao usar o console do Google Cloud, especifique as palavras-chave na seção Inserir caminho do destino (opcional). Essa seção aparece quando você cria uma configuração de relatório de inventário.
Ao usar a CLI do Google Cloud, especifique palavras-chave de marcador de posição usando a flag
--destination
.Ao usar a API JSON, especifique as palavras-chave de marcador de posição no campo
storage_destination_options.destination_path
do objeto ReportConfig.
Controle de acesso e segurança
As recomendações e considerações a seguir estão relacionadas à segurança e ao uso de relatórios de inventário e configurações:
Recomendamos que os usuários com o papel
roles/storage.admin
também tenham as permissõesstorageinsights.reportConfigs.*
para que possam manter o controle sobre o uso de todos os recursos nos seus buckets, como a leitura de objetos e seus metadados.Recomendamos que você limite o acesso aos recursos do relatório de inventário concedendo as permissões
storageinsights.reportConfigs.*
apenas aos indivíduos necessários.Depois que uma configuração de relatório de inventário é criada, ela continua a gerar relatórios de inventário, mesmo que o usuário que criou a configuração não tenha mais as permissões necessárias. Para deixar de gerar relatórios de inventário, edite a data de término na configuração do relatório de inventário ou exclua a configuração completamente.
A seguir
- Se você tiver problemas com a geração de relatórios de inventário, consulte a Solução de problemas para receber ajuda.