Esta página descreve como criar e gerir configurações de relatórios de inventário e relatórios de inventário gerados, para que possa obter um resumo de alto nível dos metadados de todos os seus objetos num determinado contentor. Para uma vista geral dos relatórios de inventário, consulte a documentação de vista geral dos relatórios de inventário.
Antes de começar
Obtenha as funções necessárias
Para receber as autorizações necessárias para criar e gerir relatórios de inventário, peça ao seu administrador que lhe conceda as seguintes funções do IAM no projeto ou nos contentores de origem e destino com os quais vai gerir os relatórios de inventário.
Para criar e gerir configurações de relatórios de inventário:
roles/storage.adminno contentor de origem e no contentor de destinoroles/storageinsights.adminno projeto
Para ler e transferir relatórios de inventário:
roles/storage.objectViewerno contentor de destinoroles/storageinsights.viewerno projeto
Estas funções predefinidas contêm as autorizações necessárias para criar e gerir relatórios e configurações de inventário. Para ver as autorizações exatas necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
Para criar e gerir configurações de relatórios de inventário:
storage.buckets.getno contentor de origemstorage.objects.listno contentor de origemstorage.buckets.getObjectInsightsno contentor de origemstorage.buckets.getno contentor de destinostorage.objects.createno contentor de destinostorageinsights.reportConfigs.deleteno projetostorageinsights.reportConfigs.getno projetostorageinsights.reportConfigs.createno projetostorageinsights.reportConfigs.listno projetostorageinsights.reportConfigs.updateno projeto
Para ler e transferir relatórios de inventário:
storage.objects.getno contentor de destinostorageinsights.reportDetails.getno projetostorageinsights.reportDetails.listno projeto
Também pode conseguir estas autorizações com outras funções predefinidas. Para ver que funções estão associadas a que autorizações, consulte o artigo Funções de IAM para o Cloud Storage.
Para ver instruções sobre como usar funções para controlar o acesso aos contentores, consulte o artigo Use a IAM. Para ver instruções sobre como usar funções para controlar o acesso a projetos, consulte o artigo Gerir acesso.
Ative a API Storage Insights
Consola
Para ativar a API storageinsights.googleapis.com, siga as
instruções em Ativar serviços.
Linha de comandos
Para ativar a API Storage Insights no seu projeto atual, execute o seguinte comando:
gcloud services enable storageinsights.googleapis.com
Para mais detalhes sobre como ativar serviços para um Google Cloud projeto, consulte o artigo Ativar e desativar serviços.
APIs REST
API JSON
Use a Google Cloud consola ou a CLI Google Cloud para ativar a API Storage Insights.
Crie uma configuração de relatório de inventário
Consola
Para criar uma configuração de relatório de inventário, conclua os seguintes passos:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor que quer usar como contentor de origem.
Na página Detalhes do contentor, clique no separador Relatórios de inventário.
Clique em Create report configuration.
Na secção Identifique a configuração do relatório, crie um nome a apresentar para a configuração do relatório de inventário. O nome a apresentar pode conter até 256 carateres.
Na secção Escolher campos de metadados, selecione os campos de metadados que quer incluir nos relatórios de inventário.
Clique em Continuar.
Na secção Escolha um formato de ficheiro, selecione o formato de ficheiro no qual quer gerar relatórios de inventário.
Na secção Escolha um contentor de destino, selecione o contentor que quer usar como contentor de destino.
Na secção Introduza o caminho de destino (opcional), pode especificar opcionalmente um caminho de destino onde os relatórios de inventário vão ser gerados.
Na secção Opções de agendamento, especifique a frequência, a data de início e a data de fim para gerar relatórios.
Clique em Criar.
É apresentada a página Detalhes da configuração do relatório. Os metadados dos relatórios de inventário gerados aparecem na página.
Linha de comandos
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
Substituição:
SOURCE_BUCKET_URLcom o URL do bucket de origem. Por exemplo,gs://my_example_source_bucket.SEPARATORcom o caráter usado para separar os registos no ficheiro CSV do relatório de inventário. Tem de ser\nou\r\n. O valor predefinido é\n. Opcional. Se for usada a flag--csv-separator, não é possível usar--parquet.DELIMITERcom o delimitador que separa os campos no ficheiro CSV do relatório de inventário. O valor pode incluir um carácter e não pode ser o mesmo valor queSEPARATOR. O valor predefinido é,. Opcional. Se for usado o--csv-delimiter, não é possível usar o--parquet.--[no]-csv-headercom a flag que indica se os cabeçalhos estão ou não incluídos no ficheiro CSV do relatório de inventário. Use--csv-headerpara incluir cabeçalhos e--no-csv-headerpara excluir cabeçalhos. Se usar qualquer uma das flags, não pode usar--parquet.DISPLAY_NAMEcom o nome editável da configuração do relatório de inventário. Opcional.--parquetcom a flag que gera relatórios de inventário no formato Apache Parquet em vez de CSV. Se forem usados, não é possível usar--csv-delimiter,--csv-separatore--[no-]csv-header.DESTINATION_PATHcom o contentor ou a pasta no contentor onde os relatórios de inventário vão ser gerados. Por exemplo,gs://my_example_destination_bucketougs://my_example_destination_bucket/path/to/inventory/report.Quando especifica um caminho para uma pasta num contentor, pode usar palavras-chave no caminho, que são substituídas pelos respetivos valores quando o relatório é gerado. Isto permite-lhe gerar relatórios num formato particionado do Hive para que possa carregar ou consultar os dados no BigQuery sem processamento adicional.
METADATA_FIELDcom uma lista separada por vírgulas de campos de metadados que quer incluir no relatório de inventário.START_DATEcom a data UTC em que quer começar a gerar relatórios de inventário. Por exemplo,2022-01-15.FREQUENCYcom a frequência com que quer que os relatórios de inventário sejam gerados. Os valores sãodailyouweekly.END_DATEcom a data UTC após a qual quer parar de gerar relatórios de inventário. Tem de ser um valor apósSTART_DATE. Por exemplo, se especificar2022-02-15, os relatórios de inventário vão deixar de ser gerados a partir de 16 de fevereiro de 2022.
Bibliotecas cliente
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Para criar uma configuração de relatório de inventário, conclua os seguintes passos:
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization.Crie um ficheiro JSON que contenha as seguintes informações, em que todos os campos são obrigatórios, salvo indicação em contrário:
{ "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" } } }
Substituição:
DISPLAY_NAMEcom o nome a apresentar editável da configuração do relatório de inventário. Pode conter até 256 carateres.FREQUENCYcom a frequência de geração de relatórios de inventário. Os valores sãoDAILYouWEEKLY.START_DATEcom a data UTC em que quer começar a gerar relatórios de inventário. Não pode ser a data atual nem qualquer data passada. O valor tem de ser um objeto que contenha as chavesday,montheyear. Por exemplo:{"day": 15, "month": 8, "year": 2022}.END_DATEcom a data UTC após a qual quer parar de gerar relatórios de inventário. O valor tem de ser um objeto com as chavesday,montheyear. Por exemplo, se especificar{"day": 15, "month": 9, "year": 2022}, os relatórios de inventário deixam de ser gerados a partir de 16 de setembro de 2022.RECORD_SEPARATORcom o caráter usado para separar os registos no ficheiro CSV do relatório de inventário. Tem de ser\nou\r\n. O valor predefinido é\n. Este campo é opcional.DELIMITERcom o delimitador que separa os campos no ficheiro CSV do relatório de inventário. O valor pode incluir um caráter e não pode ser igual aoRECORD_SEPARATOR. O valor predefinido é,. Este campo é opcional.HEADER_REQUIREDcom o valor booleano que indica se os cabeçalhos estão ou não incluídos no ficheiro CSV. Este campo é opcional.SOURCE_BUCKET_NAMEcom o nome do recipiente de origem que contém os objetos para os quais quer gerar relatórios de inventário. Por exemplo,my_example_bucket.METADATA_FIELDcom uma lista separada por vírgulas dos campos de metadados que quer incluir no relatório de inventário.DESTINATION_BUCKET_NAMEcom o nome do recipiente de destino onde os relatórios de inventário gerados são gerados e armazenados. Por exemplo,my_example_destination_bucket.DESTINATION_PATHcom o caminho no contentor de destino onde os relatórios de inventário gerados são gerados. Este campo é opcional.Quando especifica um caminho para uma pasta num contentor, pode usar palavras-chave no caminho, que são substituídas pelos respetivos valores quando o relatório é gerado. Isto permite-lhe gerar relatórios num formato particionado do Hive para que possa carregar ou consultar os dados no BigQuery sem processamento adicional.
Por exemplo, o seguinte exemplo de código cria uma configuração de relatório de inventário denominada "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
cURLpara chamar a API JSON com um pedidoCreateReportConfig: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" \
Substituição:
JSON_FILE_NAMEcom o caminho para o ficheiro JSON que criou no passo anterior.YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.
Conceda as funções necessárias ao agente do serviço
Um agente de serviço ao nível do projeto é criado automaticamente na primeira vez que configura 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 IAM da Google Cloud consola
quando seleciona a caixa de verificação Incluir concessões de funções fornecidas pela Google.
Para permitir que o Storage Insights gere e escreva relatórios de inventário, peça ao seu administrador para conceder ao agente de serviço as seguintes funções de IAM:
roles/storage.insightsCollectorServiceno contentor de origem, que inclui as autorizaçõesstorage.buckets.getObjectInsightsestorage.buckets.getroles/storage.objectCreatorno contentor de destino, que inclui a autorizaçãostorage.objects.create
Para obter instruções sobre como conceder funções, consulte o artigo Use o IAM.
Pode conceder a função roles/storage.insightsCollectorService através da consola ou da Google Cloud CLI. Google Cloud Por 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.insightsCollectorServiceDepois de o agente de serviço receber as autorizações necessárias, demora até 24 horas a escrever o primeiro relatório de inventário no contentor de destino.
Edite uma configuração de relatório de inventário
Depois de criar uma configuração de relatório de inventário, pode modificar determinadas propriedades da configuração.
Consola
Para editar uma configuração de relatório de inventário, siga os passos abaixo:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor de origem que contém a configuração do relatório de inventário que quer editar.
Na página Detalhes do contentor do contentor de origem, clique no separador Relatórios de inventário.
Clique no nome da configuração do relatório de inventário que quer editar.
Na página Detalhes da configuração do relatório apresentada, edite as propriedades pretendidas através do botão Editar.
Linha de comandos
Para editar uma configuração de relatório de inventário, siga os passos abaixo:
Para encontrar o nome da configuração do relatório de inventário que quer editar, liste todas as configurações de inventário no contentor de origem com o comando:
gcloud storage insights inventory-reports listgcloud storage insights inventory-reports list \ --source=SOURCE_BUCKET \ --filter=EXPRESSION \ --page-size=SIZE \ --sort-by=FIELD \ --format="yaml(name)"
Substituição:
SOURCE_BUCKETcom o URL do bucket de origem que contém a configuração do relatório de inventário.EXPRESSIONcom um filtro booleano a aplicar a cada item de recurso a apresentar. Se a expressão for avaliada como Verdadeiro, o item é apresentado. Para ver mais detalhes e exemplos de expressões de filtro, execute$ gcloud topic filters.SIZEcom o número máximo de recursos por página. A predefinição é 50.FIELDcom uma lista separada por vírgulas de nomes de chaves de campos de recursos pelos quais ordenar. A ordem predefinida é ascendente. Adicione o prefixo~a um campo para ordenar por ordem descendente nesse campo.
Edite os campos de configuração do relatório de inventário que quer atualizar através do comando
gcloud storage insights inventory-reports update. O exemplo seguinte 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 cliente
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Para editar uma configuração de relatório de inventário, conclua os passos seguintes:
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization.Obtenha o nome da configuração do relatório de inventário que quer editar usando
cURLpara chamar a API JSON com um pedido 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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.
Se quiser obter todas as configurações de relatórios de inventário num contentor de origem específico, anexe o parâmetro de consulta
filterà sua 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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.BUCKET_NAMEcom o nome do bucket de origem que contém as configurações do relatório de inventário que quer editar.
Crie um ficheiro JSON que inclua as alterações às propriedades que quer editar. O exemplo seguinte 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
cURLpara chamar a API JSON com um pedidoPatchReportConfig: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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.REPORT_CONFIG_UUIDcom o UUID gerado automaticamente da configuração do relatório de inventário.
Apresente configurações de relatórios de inventário
Consola
Para listar as configurações do relatório de inventário num contentor de origem, conclua os passos abaixo:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor de origem que contém as configurações do relatório de inventário que quer ver.
Na página Detalhes do contentor, clique no separador Relatórios de inventário.
São apresentadas as configurações do relatório de inventário no contentor de origem.
Linha de comandos
Pode listar todas as configurações de inventário num contentor 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)"
Substituição:
SOURCE_BUCKETcom o URL do bucket de origem que contém a configuração do relatório de inventário.EXPRESSIONcom um filtro booleano a aplicar a cada item de recurso a apresentar. Se a expressão for avaliada como Verdadeiro, o item é apresentado. Para ver mais detalhes e exemplos de expressões de filtro, execute$ gcloud topic filters.SIZEcom o número máximo de recursos por página. A predefinição é 50.FIELDcom uma lista separada por vírgulas de nomes de chaves de campos de recursos pelos quais ordenar. A ordem predefinida é ascendente. Adicione o prefixo~a um campo para ordenar por ordem descendente nesse campo.
Bibliotecas cliente
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization.Pode listar todas as configurações de relatórios de inventário num projeto para uma determinada localização através de um pedido 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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.
Se quiser listar todas as configurações de relatórios de inventário num contentor de origem específico, anexe o parâmetro de consulta
filterà sua 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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.BUCKET_NAMEcom o nome do contentor de origem que contém as configurações do relatório de inventário que quer listar.
Transfira um relatório de inventário
Consola
Transfira relatórios individuais
Os relatórios de inventário são gerados e armazenados como objetos no contentor de destino, pelo que pode transferi-los como faria com um objeto normal.
Para transferir um relatório de inventário, conclua os seguintes passos:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor de destino que contém o relatório de inventário que quer transferir.
Na página Detalhes do contentor, certifique-se de que o separador Objetos está selecionado.
Clique em Transferir associado ao relatório de inventário que quer transferir.
Se não souber o bucket de destino, também pode transferir um relatório de inventário através da configuração do relatório de inventário a partir da qual foi gerado:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor de origem que contém a configuração do relatório de inventário que gerou o relatório que quer transferir.
Na página Detalhes do contentor, clique no nome da configuração da configuração do relatório de inventário.
Na página Detalhes da configuração do relatório apresentada, navegue para a secção Histórico do relatório de inventário e, de seguida, clique no caminho do objeto de destino do relatório de inventário que quer transferir.
A página Detalhes do contentor é apresentada para o contentor de destino que contém o relatório de inventário.
Clique em Transferir associado ao relatório de inventário que quer transferir.
Transfira fragmentos de relatórios
Para transferir um relatório de inventário que foi dividido em um ou mais fragmentos, conclua os seguintes passos:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor de destino que especificou quando criou a configuração do relatório de inventário.
Na página Detalhes do contentor, verifique a presença de um ficheiro de manifesto. A presença de um ficheiro de manifesto indica que todos os fragmentos de um relatório de inventário foram gerados.
Um exemplo de nome de ficheiro de manifesto é
fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json.No contentor de destino, clique em Transferir associado ao ficheiro de manifesto. Tome nota dos nomes dos ficheiros de fragmentos que quer transferir no campo
report_shards_file_names.No contentor de destino, clique em Transferir associado aos ficheiros de fragmentos que quer transferir.
Linha de comandos
Transfira relatórios individuais
Para transferir um relatório de inventário, conclua os seguintes passos:
Para listar todos os relatórios de inventário que foram gerados por uma configuração de relatório de inventário e obter os respetivos
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
Substituição:
CONFIG_NAMEcom o nome exclusivo da configuração do relatório de inventário, no formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID.EXPRESSIONcom um filtro booleano a aplicar a cada item de recurso a apresentar. Se a expressão for avaliada como Verdadeira, esse item é apresentado. Para ver mais detalhes e exemplos de expressões de filtro, execute$ gcloud topic filters.SIZEcom o número máximo de recursos por página. A predefinição é 50.FIELDcom uma lista separada por vírgulas de nomes de chaves de campos de recursos pelos quais ordenar. A ordem predefinida é ascendente. Adicione o prefixo~a um campo para ordenar por ordem descendente nesse campo.
Se for bem-sucedido, o comando devolve uma saída semelhante à seguinte:
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 transferir um relatório de inventário, tem de obter primeiro a propriedade
reportPathPrefixdo objeto ReportDetail. Para obter oreportPathPrefixde 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_NAMEpelo nome do relatório de inventário no formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID.
Transfira fragmentos de relatórios
Para transferir um relatório de inventário que foi dividido em um ou mais fragmentos, conclua os seguintes passos:
Transfira o ficheiro de manifesto do relatório de inventário através do comando
gcloud storage cp:gcloud storage cp gs://BUCKET_NAME/MANIFEST_FILE_NAME DOWNLOAD_PATH
Substituição:
BUCKET_NAMEcom o nome do contentor de destino.MANIFEST_FILE_NAMEcom o nome do ficheiro de manifesto no contentor de destino, de acordo com a seguinte convenção de nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Onde:
REPORT_CONFIG_UUIDé o UUID gerado automaticamente da configuração do relatório de inventário que gerou os fragmentos de relatório que quer transferir.TARGET_DATETIMEé a data/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_PATHcom o caminho para o seu sistema de ficheiros onde quer guardar o relatório de inventário. Por exemplo,./example_report.csv.
Para transferir um ficheiro de fragmento, use o comando
gcloud storage cp:gcloud storage cp gs://BUCKET_NAME/SHARD_FILE_NAME DOWNLOAD_PATH
Substituição:
BUCKET_NAMEcom o nome do contentor de destino.SHARD_FILE_NAMEcom o nome com codificação URL do ficheiro de fragmento que quer transferir. Por exemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv.DOWNLOAD_PATHcom o caminho para o seu sistema de ficheiros onde quer guardar o relatório de inventário. Por exemplo,./example_report.csv.
Bibliotecas cliente
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Transfira relatórios individuais
Para transferir um relatório de inventário, conclua os seguintes passos:
Ter a CLI gcloud instalada e inicializada, o que lhe 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
cURLpara chamar a API JSON com um pedido para listar os 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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.REPORT_CONFIG_UUIDcom o UUID gerado automaticamente da configuração do relatório de inventário que gerou o relatório que quer transferir.
Para obter os detalhes de um relatório individual, use
cURLpara chamar a API JSON com um pedidoGetReportDetails: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" \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.REPORT_CONFIG_UUIDcom o UUID gerado automaticamente da configuração do relatório de inventário que gerou o relatório que quer transferir.REPORT_DETAIL_IDcom o nome do relatório de inventário que quer transferir.
Transfira fragmentos de relatórios
Para transferir um relatório de inventário que foi dividido em um ou mais fragmentos, conclua os seguintes passos:
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization.Para transferir o ficheiro de manifesto do relatório de inventário, use
cURLpara chamar a API JSON com um pedido deGETobjeto: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" \
Substituição:
BUCKET_NAMEcom o nome do contentor de destino.MANIFEST_FILE_NAMEcom o nome do ficheiro de manifesto no contentor de destino, de acordo com a seguinte convenção de nomenclatura:REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json
Onde:
REPORT_CONFIG_UUIDé o UUID gerado automaticamente da configuração do relatório de inventário que gerou os fragmentos de relatório que quer transferir.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_namesdo ficheiro do manifesto contém os nomes dos fragmentos do relatório de inventário que pode transferir.Para transferir os ficheiros de fragmentos do relatório de inventário, use
curlpara chamar a API JSON do Cloud Storage com um pedido deGetobjeto: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"
Substituição:
DOWNLOAD_PATHcom o caminho para o seu sistema de ficheiros local onde quer guardar o objeto. Por exemplo,Desktop/dog.png.BUCKET_NAMEcom o nome do contentor de destino que contém o relatório de inventário. Por exemplo,my-bucket.SHARD_FILE_NAMEcom o nome com codificação URL do ficheiro de fragmento que quer transferir. Por exemplo,fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv.
Elimine uma configuração de relatório de inventário
Consola
Para eliminar uma configuração de relatório de inventário, conclua os passos seguintes:
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor de origem que contém a configuração do relatório de inventário que quer eliminar.
Na página Detalhes do contentor do contentor de origem, clique no separador Relatórios de inventário.
Clique no nome da configuração da configuração do relatório de inventário que quer eliminar.
Na página Detalhes da configuração do relatório apresentada, clique em Eliminar.
Linha de comandos
Para eliminar 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 flag --force elimina os metadados de todos os relatórios de inventário gerados pela configuração de relatório de inventário especificada. Os próprios objetos do relatório de inventário não são eliminados.
Bibliotecas cliente
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Para eliminar uma configuração de relatório de inventário, conclua os passos seguintes:
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization.Para eliminar uma configuração de relatório de inventário, use
cURLpara chamar a API JSON com um pedidoDeleteReportConfig: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' \
Substituição:
YOUR_PROJECTcom o nome do projeto no qual residem os contentores de origem e de destino.LOCATIONcom a localização dos contentores de origem e destino. Por exemplo,us-west1.REPORT_CONFIG_UUIDcom o UUID gerado automaticamente da configuração do relatório de inventário que quer eliminar.
O parâmetro de consulta force elimina os metadados de todos os relatórios de inventário gerados pela configuração de relatórios de inventário especificada.
Os próprios objetos do relatório de inventário não são eliminados.
Avançado: gere relatórios de inventário num formato particionado do Hive
Quando cria uma configuração de relatório de inventário, pode especificar um caminho de destino, que é uma localização no contentor de destino onde os relatórios de inventário são gerados. Isto permite-lhe gerar relatórios de inventário num formato particionado do Hive.
Especifica um caminho de destino através de palavras-chave de marcadores de posição.
As palavras-chave no caminho de destino são substituídas pelos respetivos valores quando o relatório de inventário é gerado. Por exemplo, o caminho
de destino
config={{report-config-id}}/date={{date}}
pode ser resolvido como config=1A34-F2E456-12B456-1C3D/date=2022-05-20.
Palavras-chave do caminho de destino
Pode especificar as palavras-chave
report-config-id, date ou datetime, incluídas entre {{ e
}}, em que:
report-config-idé o UUID da configuração do 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 através de qualquer uma das seguintes ferramentas:
Quando usar a Google Cloud consola, especifique palavras-chave na secção Introduza o caminho de destino (opcional). Esta secção aparece quando cria uma configuração de relatório de inventário.
Quando usar a Google Cloud CLI, especifique palavras-chave de marcadores de posição através da flag
--destination.Quando usar a API JSON, especifique palavras-chave de marcadores de posição no campo
storage_destination_options.destination_pathdo objeto ReportConfig.
Controlo de acesso e segurança
As seguintes recomendações e considerações estão relacionadas com a segurança e a utilização de relatórios e configurações de inventário:
Recomendamos que os utilizadores com a função
roles/storage.admintambém tenham as autorizaçõesstorageinsights.reportConfigs.*para poderem manter o controlo sobre a utilização de todos os recursos nos respetivos contentores, como a leitura de objetos e os respetivos metadados.Recomendamos que limite o acesso aos recursos do relatório de inventário concedendo as autorizações
storageinsights.reportConfigs.*apenas aos indivíduos necessários.Depois de criar uma configuração de relatório de inventário, esta continua a gerar relatórios de inventário, mesmo que o utilizador que criou a configuração já não tenha as autorizações necessárias. Para parar de gerar relatórios de inventário, pode editar a data de conclusão na configuração do relatório de inventário ou eliminar a configuração por completo.
O que se segue?
- Se tiver problemas com a geração de relatórios de inventário, consulte a secção de Resolução de problemas para receber ajuda.