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.admin
no contentor de origem e no contentor de destinoroles/storageinsights.admin
no projeto
Para ler e transferir relatórios de inventário:
roles/storage.objectViewer
no contentor de destinoroles/storageinsights.viewer
no 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.get
no contentor de origemstorage.objects.list
no contentor de origemstorage.buckets.getObjectInsights
no contentor de origemstorage.buckets.get
no contentor de destinostorage.objects.create
no contentor 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 transferir relatórios de inventário:
storage.objects.get
no contentor de destinostorageinsights.reportDetails.get
no projetostorageinsights.reportDetails.list
no 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_URL
com o URL do bucket de origem. Por exemplo,gs://my_example_source_bucket
.SEPARATOR
com o caráter usado para separar os registos no ficheiro CSV do relatório de inventário. Tem de ser\n
ou\r\n
. O valor predefinido é\n
. Opcional. Se for usada a flag--csv-separator
, não é possível usar--parquet
.DELIMITER
com 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-header
com 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-header
para incluir cabeçalhos e--no-csv-header
para excluir cabeçalhos. Se usar qualquer uma das flags, não pode usar--parquet
.DISPLAY_NAME
com o nome editável da configuração do relatório de inventário. Opcional.--parquet
com 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-separator
e--[no-]csv-header
.DESTINATION_PATH
com o contentor ou a pasta no contentor onde os relatórios de inventário vão ser gerados. Por exemplo,gs://my_example_destination_bucket
ougs://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_FIELD
com uma lista separada por vírgulas de campos de metadados que quer incluir no relatório de inventário.START_DATE
com a data UTC em que quer começar a gerar relatórios de inventário. Por exemplo,2022-01-15
.FREQUENCY
com a frequência com que quer que os relatórios de inventário sejam gerados. Os valores sãodaily
ouweekly
.END_DATE
com 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_NAME
com o nome a apresentar editável da configuração do relatório de inventário. Pode conter até 256 carateres.FREQUENCY
com a frequência de geração de relatórios de inventário. Os valores sãoDAILY
ouWEEKLY
.START_DATE
com 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
,month
eyear
. Por exemplo:{"day": 15, "month": 8, "year": 2022}
.END_DATE
com 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
,month
eyear
. 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_SEPARATOR
com o caráter usado para separar os registos no ficheiro CSV do relatório de inventário. Tem de ser\n
ou\r\n
. O valor predefinido é\n
. Este campo é opcional.DELIMITER
com 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 aRECORD_SEPARATOR
. O valor predefinido é,
. Este campo é opcional.HEADER_REQUIRED
com o valor booleano que indica se os cabeçalhos estão ou não incluídos no ficheiro CSV. Este campo é opcional.SOURCE_BUCKET_NAME
com 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_FIELD
com uma lista separada por vírgulas dos campos de metadados que quer incluir no relatório de inventário.DESTINATION_BUCKET_NAME
com 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_PATH
com o caminho no contentor de destino onde são gerados os relatórios de inventário. 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
cURL
para chamar a API JSON com um pedidoInsert
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" \
Substituição:
JSON_FILE_NAME
com o caminho para o ficheiro JSON que criou no passo anterior.YOUR_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com 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.insightsCollectorService
no contentor de origem, que inclui as autorizaçõesstorage.buckets.getObjectInsights
estorage.buckets.get
roles/storage.objectCreator
no 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.insightsCollectorService
Depois 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 list
gcloud storage insights inventory-reports list \ --source=SOURCE_BUCKET \ --filter=EXPRESSION \ --page-size=SIZE \ --sort-by=FIELD \ --format="yaml(name)"
Substituição:
SOURCE_BUCKET
com o URL do bucket de origem que contém a configuração do relatório de inventário.EXPRESSION
com 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
.SIZE
com o número máximo de recursos por página. A predefinição é 50.FIELD
com 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
cURL
para chamar a API JSON com um pedido deGet
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" \
Substituição:
YOUR_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com 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_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com a localização dos contentores de origem e destino. Por exemplo,us-west1
.BUCKET_NAME
com 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
cURL
para chamar a API JSON com um pedidoPatch
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" \
Substituição:
YOUR_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com a localização dos contentores de origem e destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
com 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_BUCKET
com o URL do bucket de origem que contém a configuração do relatório de inventário.EXPRESSION
com 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
.SIZE
com o número máximo de recursos por página. A predefinição é 50.FIELD
com 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_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com 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_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com a localização dos contentores de origem e destino. Por exemplo,us-west1
.BUCKET_NAME
com 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 camporeport_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_NAME
com o nome exclusivo da configuração do relatório de inventário, no formatoprojects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID
.EXPRESSION
com 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
.SIZE
com o número máximo de recursos por página. A predefinição é 50.FIELD
com 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
reportPathPrefix
do objeto ReportDetail. Para obter 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
.
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_NAME
com o nome do contentor de destino.MANIFEST_FILE_NAME
com 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 do 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_PATH
com 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_NAME
com o nome do contentor de destino.SHARD_FILE_NAME
com 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_PATH
com 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
cURL
para 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_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com a localização dos contentores de origem e destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
com 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
cURL
para chamar a API JSON com um pedidoGet
ReportDetails:curl --request GET \ "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
Substituição:
YOUR_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com a localização dos contentores de origem e destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
com o UUID gerado automaticamente da configuração do relatório de inventário que gerou o relatório que quer transferir.REPORT_DETAIL_ID
com 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
cURL
para chamar a API JSON com um pedido deGET
objeto: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_NAME
com o nome do contentor de destino.MANIFEST_FILE_NAME
com 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_names
do 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
curl
para chamar a API JSON do Cloud Storage com um pedido deGet
objeto: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_PATH
com o caminho para o seu sistema de ficheiros local onde quer guardar o objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
com o nome do contentor de destino que contém o relatório de inventário. Por exemplo,my-bucket
.SHARD_FILE_NAME
com 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
cURL
para chamar a API JSON com um pedidoDelete
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' \
Substituição:
YOUR_PROJECT
com o nome do projeto no qual residem os contentores de origem e destino.LOCATION
com a localização dos contentores de origem e destino. Por exemplo,us-west1
.REPORT_CONFIG_UUID
com 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_path
do 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.admin
també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.