É possível consultar recursos no projeto, na pasta ou na organização usando um dialeto compatível com o SQL do BigQuery.
Antes de começar
- Ative a API Cloud Asset Inventory no projeto em que você está executando os comandos do Inventário de recursos do Cloud. 
- Verifique se sua conta tem a função correta para chamar a API Cloud Asset Inventory. Para permissões individuais de cada tipo de chamada, consulte Permissões. 
Limitações
- Os nomes de tipo de recurso têm - .e- /substituídos por- _. Por exemplo,- compute.googleapis.com/Instancese torna- compute_googleapis_com_Instance.
- A solicitação precisa ser uma consulta - SELECT.
- O SQL legado do BigQuery não é compatível. 
- Não é possível usar resultados de consultas maiores que 10 GB. 
- Os resultados de consultas maiores que 10 MB ou 1.000 linhas são sempre paginados. 
- As consultas precisam levar menos de 6 horas para serem processadas. 
- Os resultados da consulta só podem ser exportados para um conjunto de dados do BigQuery na - USmultirregião.
Tabelas que você pode consultar
É possível consultar as seguintes tabelas:
- Para tipos de conteúdo - RESOURCE, os nomes das tabelas no conjunto de dados correspondem ao nome do tipo de recurso, supondo que o tipo de recurso exista. Por exemplo, a tabela- compute_googleapis_com_Instancecontém metadados de instância do Compute Engine.
- Para tipos de conteúdo que não são - RESOURCE, os nomes das tabelas no conjunto de dados correspondem aos nomes de tipo de conteúdo RPC/REST. Por exemplo,- ACCESS_POLICY.
- Para consultar metadados padrão de recursos em todos os tipos de recursos, use o nome da tabela - STANDARD_METADATA. Isso inclui todos os campos, exceto- resource.DATA, que é específico para cada tipo de recurso.
Consultar metadados do recurso
Console
Para consultar os metadados de recursos do seu projeto, pasta ou organização, siga estas etapas:
- 
        No console Google Cloud , acesse a guia Consulta de recursos na página Inventário de recursos. Se a guia Consulta de recursos não aparecer, você precisará de acesso ao nível Premium ou Enterprise do Security Command Center ou ao Gemini Cloud Assist. 
- Mude para o projeto, a pasta ou a organização que você quer consultar.
- Clique na guia Consulta de recursos.
- 
        Para consultar metadados de recursos, use uma consulta de amostra ou crie a sua própria: - Para usar uma amostra, clique em uma entrada na guia Biblioteca de consultas para visualizar a consulta. Clique em Aplicar para copiar esse exemplo na caixa Editar consulta. Em seguida, edite a consulta ou clique em Executar para executá-la.
- Para criar sua própria consulta, insira o texto diretamente na caixa Editar consulta e clique em Executar. Para ajudar a escrever sua própria consulta, clique em uma tabela no painel Selecionar tabela para visualizar o esquema e o conteúdo dela. Consulte Sintaxe de consulta para saber como criar uma consulta.
 Os metadados de recursos correspondentes à consulta são mostrados na guia Resultado da consulta. 
- 
        Opcional: para fazer o download dos conjuntos de resultados da consulta no formato CSV, clique em Exportar. O tamanho máximo do arquivo CSV é de 2 MB. Se a solicitação de download falhar porque o tamanho do arquivo excede esse limite, uma mensagem vai aparecer com instruções para exportar os resultados completos. 
gcloud
gcloud asset query \ --SCOPE \ --statement="SQL_SELECT_QUERY" \ --timeout="TIMEOUTs"
Forneça os valores a seguir:
- 
    SCOPE: use um dos seguintes valores:- 
        project=PROJECT_ID, em quePROJECT_IDé o ID do projeto que tem os recursos que você quer consultar.
- 
        folder=FOLDER_ID, em queFOLDER_IDé o ID da pasta que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud pasta Google Cloud consolePara encontrar o ID de uma pasta do Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Pesquise o nome da pasta. O ID da pasta aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma pasta Google Cloud localizada no nível da organização, use o seguinte comando: gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)" Em que TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag --formatpara ver mais informações sobre as pastas encontradas.O comando anterior não retorna os IDs das subpastas dentro das pastas. Para isso, execute o seguinte comando usando o ID de uma pasta de nível superior: gcloud resource-manager folders list --folder=FOLDER_ID 
- 
            
- 
        organization=ORGANIZATION_ID, em queORGANIZATION_IDé o ID da organização que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud organização Google Cloud consolePara encontrar o ID de uma organização Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma organização Google Cloud , use o seguinte comando: gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))" 
- 
            
 
- 
        
- 
    SQL_SELECT_QUERY: uma consulta SQLSELECT.
- 
    TIMEOUT: opcional. O tempo máximo, em segundos, que um cliente deve aguardar para que a consulta seja concluída antes de continuar. Use tempos limite para executar sua consulta de forma assíncrona e recupere os resultados depois com referências de job.
Consulte a referência da CLI gcloud para conferir todas as opções.
Exemplo
Execute o comando a seguir para receber os nomes e tipos de recursos das duas primeiras instâncias do Compute Engine no projeto my-project.
gcloud asset query \ --project=my-project \ --statement=" SELECT name, assetType FROM compute_googleapis_com_Instance LIMIT 2"
Resposta de job concluído
O exemplo a seguir mostra uma resposta à consulta de exemplo anterior. A resposta contém uma referência de job e informa se o job foi concluído (done: true). Se o job foi concluído, o objeto queryResult é preenchido com os dados adequados, e os resultados são listados depois.
done: true jobReference: 0000000000000000000000000000000000000000000000000000000000000000 queryResult: nextPageToken: '' totalRows: '2' name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1 assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/instance-2 assetType: compute.googleapis.com/Instance
Resposta de job não concluída
Se você definir um tempo limite na solicitação, a consulta será realizada
      de forma assíncrona, e você vai receber uma resposta indicando que o job está
      incompleto (done: false). Esses tipos de respostas contêm uma
      referência de job e um objeto queryResult não preenchido:
done: false jobReference: 0000000000000000000000000000000000000000000000000000000000000000 queryResult: nextPageToken: '' totalRows: '0'
Você pode usar o valor jobReference para
      recuperar os resultados da consulta mais tarde, depois que o
      job for concluído e os dados estiverem disponíveis.
REST
Método HTTP e URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:queryAssets
Solicitar corpo JSON:
{ "statement": "SQL_SELECT_QUERY", "timeout": "TIMEOUTs", "pageSize": "PAGE_SIZE", "pageToken": "PAGE_TOKEN" }
Forneça os valores a seguir:
- 
    SCOPE_PATH: use um dos seguintes valores:Os valores permitidos são: - 
        projects/PROJECT_ID, em quePROJECT_IDé o ID do projeto que tem os recursos que você quer consultar.
- 
        projects/PROJECT_NUMBER, em quePROJECT_NUMBERé o número do projeto que tem os recursos que você quer consultar.Como encontrar um Google Cloud número do projeto Google Cloud consolePara encontrar o número de um projeto Google Cloud , siga estas etapas: - 
            Acesse a página Boas-vindas no console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- 
            Selecione sua organização na caixa de listagem e pesquise o nome do projeto. O nome, o número e o ID do projeto são mostrados perto do título Bem-vindo. Até 4.000 recursos são exibidos. Se você não encontrar o projeto que está procurando, acesse a página Gerenciar recursos e filtre a lista usando o nome dele. 
 CLI da gcloudÉ possível extrair um Google Cloud número de projeto com o seguinte comando: gcloud projects describe PROJECT_ID --format="value(projectNumber)" 
- 
            
- 
        folders/FOLDER_ID, em queFOLDER_IDé o ID da pasta que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud pasta Google Cloud consolePara encontrar o ID de uma pasta do Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Pesquise o nome da pasta. O ID da pasta aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma pasta Google Cloud localizada no nível da organização, use o seguinte comando: gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)" Em que TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag --formatpara ver mais informações sobre as pastas encontradas.O comando anterior não retorna os IDs das subpastas dentro das pastas. Para isso, execute o seguinte comando usando o ID de uma pasta de nível superior: gcloud resource-manager folders list --folder=FOLDER_ID 
- 
            
- 
        organizations/ORGANIZATION_ID, em queORGANIZATION_IDé o ID da organização que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud organização Google Cloud consolePara encontrar o ID de uma organização Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma organização Google Cloud , use o seguinte comando: gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))" 
- 
            
 
- 
        
- 
    SQL_SELECT_QUERY: uma consulta SQLSELECT.
- 
    TIMEOUT: opcional. O tempo máximo, em segundos, que um cliente deve aguardar para que a consulta seja concluída antes de continuar. Use tempos limite para executar sua consulta de forma assíncrona e recupere os resultados depois com referências de job.
- 
    PAGE_SIZE: opcional. O número de resultados a serem retornados por página. O valor máximo é 500. Se o valor for0ou um valor negativo, um padrão apropriado será selecionado. UmnextPageTokené retornado para recuperar resultados subsequentes.
- 
    PAGE_TOKEN: opcional. Respostas longas são separadas em várias páginas. QuandopageTokennão é especificado, a primeira página é retornada. As páginas subsequentes podem ser chamadas usando onextPageTokenda resposta anterior como o valor depageToken.
Consulte a referência REST para todas as opções.
Exemplos de comandos
Execute um dos comandos a seguir para receber os nomes e tipos de recursos das duas primeiras instâncias do Compute Engine no projeto my-project.
curl (Linux, macOS ou Cloud Shell)
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "statement": " SELECT name, assetType FROM compute_googleapis_com_Instance LIMIT 2" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:queryAssets
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } $body = @" { "statement": " SELECT name, assetType FROM compute_googleapis_com_Instance LIMIT 2" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:queryAssets" | Select-Object -Expand Content
Resposta de job concluído
O exemplo a seguir mostra uma resposta à consulta de exemplo anterior. A
      resposta contém uma referência de job e informa se ele foi
      concluído ("done": true). Se o job foi concluído, o objeto
      queryResult é preenchido com os dados
      adequados.
Os resultados da consulta são divididos em rows, uma matriz que contém metadados de recursos, e schema, um objeto que descreve o esquema de cada recurso na matriz rows. Isso é feito para
      minimizar a duplicação de nomes e tipos de campos em respostas grandes.
Da mesma forma, f e v são usados na matriz rows em vez de fields e value para manter as respostas o menor possível.
{ "jobReference": "0000000000000000000000000000000000000000000000000000000000000000", "done": true, "queryResult": { "rows": [ { "f": [ { "v": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1" }, { "v": "compute.googleapis.com/Instance" } ] }, { "f": [ { "v": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2" }, { "v": "compute.googleapis.com/Instance" } ] } ], "schema": { "fields": [ { "field": "name", "type": "STRING", "mode": "NULLABLE", "fields": [] }, { "field": "assetType", "type": "STRING", "mode": "NULLABLE", "fields": [] } ] }, "nextPageToken": "", "totalRows": "1" } }
Resposta de job não concluída
Se você definir um tempo limite na solicitação, a consulta será realizada
      de forma assíncrona, e você vai receber uma resposta indicando que o job está
      incompleto ("done": false). Esses tipos de respostas contêm
      uma referência de job e um objeto queryResult não preenchido:
{ "jobReference": "0000000000000000000000000000000000000000000000000000000000000000", "done": false, "queryResult": { "rows": [], "schema": { "fields": [] }, "nextPageToken": "", "totalRows": "0" } }
Você pode usar o valor jobReference para
      recuperar os resultados da consulta mais tarde, depois que o
      job for concluído e os dados estiverem disponíveis.
Recuperar os resultados da consulta mais tarde
Para recuperar uma solicitação que demorou para ser concluída, faça uma das solicitações a seguir.
gcloud
gcloud asset query \ --SCOPE \ --job-reference="JOB_REFERENCE"
Forneça os valores a seguir:
- 
    SCOPE: use um dos seguintes valores:- 
        project=PROJECT_ID, em quePROJECT_IDé o ID do projeto que tem os recursos que você quer consultar.
- 
        folder=FOLDER_ID, em queFOLDER_IDé o ID da pasta que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud pasta Google Cloud consolePara encontrar o ID de uma pasta do Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Pesquise o nome da pasta. O ID da pasta aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma pasta Google Cloud localizada no nível da organização, use o seguinte comando: gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)" Em que TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag --formatpara ver mais informações sobre as pastas encontradas.O comando anterior não retorna os IDs das subpastas dentro das pastas. Para isso, execute o seguinte comando usando o ID de uma pasta de nível superior: gcloud resource-manager folders list --folder=FOLDER_ID 
- 
            
- 
        organization=ORGANIZATION_ID, em queORGANIZATION_IDé o ID da organização que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud organização Google Cloud consolePara encontrar o ID de uma organização Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma organização Google Cloud , use o seguinte comando: gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))" 
- 
            
 
- 
        
- 
    JOB_REFERENCE: o valor de referência do job retornado em uma resposta anterior.
Exemplo
Execute o comando a seguir para receber os resultados de uma consulta executada anteriormente no projeto my-project.
gcloud asset query \ --project=my-project \ --job-reference="0000000000000000000000000000000000000000000000000000000000000000"
REST
Método HTTP e URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:queryAssets
Solicitar corpo JSON:
{ "jobReference": "JOB_REFERENCE", "pageToken": "PAGE_TOKEN" }
Forneça os valores a seguir:
- 
    SCOPE_PATH: use um dos seguintes valores:Os valores permitidos são: - 
        projects/PROJECT_ID, em quePROJECT_IDé o ID do projeto que tem os recursos que você quer consultar.
- 
        projects/PROJECT_NUMBER, em quePROJECT_NUMBERé o número do projeto que tem os recursos que você quer consultar.Como encontrar um Google Cloud número do projeto Google Cloud consolePara encontrar o número de um projeto Google Cloud , siga estas etapas: - 
            Acesse a página Boas-vindas no console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- 
            Selecione sua organização na caixa de listagem e pesquise o nome do projeto. O nome, o número e o ID do projeto são mostrados perto do título Bem-vindo. Até 4.000 recursos são exibidos. Se você não encontrar o projeto que está procurando, acesse a página Gerenciar recursos e filtre a lista usando o nome dele. 
 CLI da gcloudÉ possível extrair um Google Cloud número de projeto com o seguinte comando: gcloud projects describe PROJECT_ID --format="value(projectNumber)" 
- 
            
- 
        folders/FOLDER_ID, em queFOLDER_IDé o ID da pasta que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud pasta Google Cloud consolePara encontrar o ID de uma pasta do Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Pesquise o nome da pasta. O ID da pasta aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma pasta Google Cloud localizada no nível da organização, use o seguinte comando: gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)" Em que TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag --formatpara ver mais informações sobre as pastas encontradas.O comando anterior não retorna os IDs das subpastas dentro das pastas. Para isso, execute o seguinte comando usando o ID de uma pasta de nível superior: gcloud resource-manager folders list --folder=FOLDER_ID 
- 
            
- 
        organizations/ORGANIZATION_ID, em queORGANIZATION_IDé o ID da organização que tem os recursos que você quer consultar.Como encontrar o ID de uma Google Cloud organização Google Cloud consolePara encontrar o ID de uma organização Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma organização Google Cloud , use o seguinte comando: gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))" 
- 
            
 
- 
        
- 
    JOB_REFERENCE: o valor de referência do job retornado em uma resposta anterior.
- 
    PAGE_TOKEN: opcional. Respostas longas são separadas em várias páginas. QuandopageTokennão é especificado, a primeira página é retornada. As páginas subsequentes podem ser chamadas usando onextPageTokenda resposta anterior como o valor depageToken.
Exemplos de comandos
Execute um dos seguintes comandos para receber os resultados de uma consulta executada anteriormente.
curl (Linux, macOS ou Cloud Shell)
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "jobReference": "0000000000000000000000000000000000000000000000000000000000000000" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:queryAssets
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } $body = @" { "jobReference": "0000000000000000000000000000000000000000000000000000000000000000" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:queryAssets" | Select-Object -Expand Content
Exportar resultados de consultas para o BigQuery
Os resultados da consulta são retornados como respostas da API Query Assets. Para exportar os resultados para sua própria tabela do BigQuery, especifique um destino do BigQuery na solicitação. Se você ainda não tiver um, crie um conjunto de dados do BigQuery antes de fazer essas solicitações.
gcloud
gcloud asset query \ --SCOPE \ --billing-project=BILLING_PROJECT_ID \ --statement="SQL_SELECT_QUERY" \ --bigquery-table=projects/BIGQUERY_PROJECT_ID/datasets/DATASET_ID/tables/TABLE_NAME \ --write-disposition="WRITE_METHOD"
Forneça os valores a seguir:
- 
    SCOPE: use um dos seguintes valores:- 
        project=PROJECT_ID, em quePROJECT_IDé o ID do projeto que tem os metadados do recurso que você quer exportar com uma consulta SQL.
- 
        folder=FOLDER_ID, em queFOLDER_IDé o ID da pasta que tem os metadados do recurso que você quer exportar com uma consulta SQL.Como encontrar o ID de uma Google Cloud pasta Google Cloud consolePara encontrar o ID de uma pasta do Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Pesquise o nome da pasta. O ID da pasta aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma pasta Google Cloud localizada no nível da organização, use o seguinte comando: gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)" Em que TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag --formatpara ver mais informações sobre as pastas encontradas.O comando anterior não retorna os IDs das subpastas dentro das pastas. Para isso, execute o seguinte comando usando o ID de uma pasta de nível superior: gcloud resource-manager folders list --folder=FOLDER_ID 
- 
            
- 
        organization=ORGANIZATION_ID, em queORGANIZATION_IDé o ID da organização que tem os metadados do recurso que você quer exportar com uma consulta SQL.Como encontrar o ID de uma Google Cloud organização Google Cloud consolePara encontrar o ID de uma organização Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma organização Google Cloud , use o seguinte comando: gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))" 
- 
            
 
- 
        
- 
    SQL_SELECT_QUERY: uma consulta SQLSELECT.
- 
    BIGQUERY_PROJECT_ID: o ID do projeto em que a tabela do BigQuery está localizada e para onde você quer exportar.
- 
    DATASET_ID: o ID do conjunto de dados do BigQuery.
- 
    TABLE_NAME: a tabela do BigQuery para a qual você está exportando os metadados. Se ele não existir, será criado.
- 
    WRITE_METHOD: especifica o comportamento se a tabela ou partição de destino do BigQuery já existir. Os valores a seguir são compatíveis:- 
        write-empty: Padrão. Se a tabela já tiver dados, um erro de duplicação será retornado no resultado do job.
- 
        write-append: anexa dados à tabela ou à partição mais recente.
- 
        write-truncate: substitui toda a tabela ou todos os dados das partições.
 
- 
        
Exemplo
Execute o comando a seguir para receber os nomes e tipos de recursos das duas primeiras instâncias do Compute Engine no projeto my-project e exporte os resultados para a tabela my-table do BigQuery no projeto my-project, substituindo toda a tabela se ela já existir.
gcloud asset query \ --project=my-project \ --statement=" SELECT name, assetType FROM compute_googleapis_com_Instance LIMIT 2" \ --bigquery-table=projects/my-project/datasets/my-dataset/tables/my-table \ --write-disposition="write-truncate"
REST
Método HTTP e URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:queryAssets
Cabeçalhos:
X-Goog-User-Project: BILLING_PROJECT_ID
Solicitar corpo JSON:
{ "statement": "SQL_SELECT_QUERY", "outputConfig": { "bigqueryDestination": { "dataset": "projects/BIGQUERY_PROJECT_ID/datasets/DATASET_ID", "table": "TABLE_NAME", "writeDisposition": "WRITE_METHOD" } }, "pageSize": "PAGE_SIZE" }
Forneça os valores a seguir:
- 
    SCOPE_PATH: use um dos seguintes valores:Os valores permitidos são: - 
        projects/PROJECT_ID, em quePROJECT_IDé o ID do projeto que tem os metadados do recurso que você quer exportar com uma consulta SQL.
- 
        projects/PROJECT_NUMBER, em quePROJECT_NUMBERé o número do projeto que tem os metadados do recurso que você quer exportar com uma consulta SQL.Como encontrar um Google Cloud número do projeto Google Cloud consolePara encontrar o número de um projeto Google Cloud , siga estas etapas: - 
            Acesse a página Boas-vindas no console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- 
            Selecione sua organização na caixa de listagem e pesquise o nome do projeto. O nome, o número e o ID do projeto são mostrados perto do título Bem-vindo. Até 4.000 recursos são exibidos. Se você não encontrar o projeto que está procurando, acesse a página Gerenciar recursos e filtre a lista usando o nome dele. 
 CLI da gcloudÉ possível extrair um Google Cloud número de projeto com o seguinte comando: gcloud projects describe PROJECT_ID --format="value(projectNumber)" 
- 
            
- 
        folders/FOLDER_ID, em queFOLDER_IDé o ID da pasta que tem os metadados do recurso que você quer exportar com uma consulta SQL.Como encontrar o ID de uma Google Cloud pasta Google Cloud consolePara encontrar o ID de uma pasta do Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Pesquise o nome da pasta. O ID da pasta aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma pasta Google Cloud localizada no nível da organização, use o seguinte comando: gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)" Em que TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag --formatpara ver mais informações sobre as pastas encontradas.O comando anterior não retorna os IDs das subpastas dentro das pastas. Para isso, execute o seguinte comando usando o ID de uma pasta de nível superior: gcloud resource-manager folders list --folder=FOLDER_ID 
- 
            
- 
        organizations/ORGANIZATION_ID, em queORGANIZATION_IDé o ID da organização que tem os metadados do recurso que você quer exportar com uma consulta SQL.Como encontrar o ID de uma Google Cloud organização Google Cloud consolePara encontrar o ID de uma organização Google Cloud , siga estas etapas: - 
            Acesse o console do Google Cloud . 
- Clique na caixa de listagem alternador na barra de menu.
- Selecione sua organização na caixa de listagem.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
 CLI da gcloudPara recuperar o ID de uma organização Google Cloud , use o seguinte comando: gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))" 
- 
            
 
- 
        
- 
    BILLING_PROJECT_ID: o ID do projeto em que o agente de serviço padrão do Inventário de recursos do Cloud está e que tem permissões para gerenciar seus conjuntos de dados e tabelas do BigQuery. Leia mais sobre como definir o projeto de faturamento.
- 
    SQL_SELECT_QUERY: uma consulta SQLSELECT.
- 
    BIGQUERY_PROJECT_ID: o ID do projeto em que a tabela do BigQuery está localizada e para onde você quer exportar.
- 
    DATASET_ID: o ID do conjunto de dados do BigQuery.
- 
    TABLE_NAME: a tabela do BigQuery para a qual você está exportando os metadados. Se ele não existir, será criado.
- 
    WRITE_METHOD: especifica o comportamento se a tabela ou partição de destino do BigQuery já existir. Os valores a seguir são compatíveis:- 
        WRITE_EMPTY: Padrão. Se a tabela já tiver dados, um erro de duplicação será retornado no resultado do job.
- 
        WRITE_APPEND: anexa dados à tabela ou à partição mais recente.
- 
        WRITE_TRUNCATE: substitui toda a tabela ou todos os dados das partições.
 
- 
        
- 
    PAGE_SIZE: opcional. O número de resultados a serem retornados por página. O valor máximo é 500. Se o valor for0ou um valor negativo, um padrão apropriado será selecionado. UmnextPageTokené retornado para recuperar resultados subsequentes.
Exemplos de comandos
Execute um dos comandos a seguir para receber os nomes e tipos de recursos das duas primeiras instâncias do Compute Engine no projeto my-project e exporte os resultados para a tabela my-table do BigQuery no projeto my-project, substituindo toda a tabela se ela já existir.
curl (Linux, macOS ou Cloud Shell)
curl -X POST \ -H "X-Goog-User-Project: BILLING_PROJECT_ID" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "statement": " SELECT name, assetType FROM compute_googleapis_com_Instance LIMIT 2", "outputConfig": { "bigqueryDestination": { "dataset": "projects/my-project/datasets/my-dataset", "table": "my-table", "writeDisposition": "WRITE_TRUNCATE" } } }' \ https://cloudasset.googleapis.com/v1/projects/my-project:queryAssets
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-Goog-User-Project" = "BILLING_PROJECT_ID"; "Authorization" = "Bearer $cred" } $body = @" { "statement": " SELECT name, assetType FROM compute_googleapis_com_Instance LIMIT 2", "outputConfig": { "bigqueryDestination": { "dataset": "projects/my-project/datasets/my-dataset", "table": "my-table", "writeDisposition": "WRITE_TRUNCATE" } } } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:queryAssets" | Select-Object -Expand Content
Outros exemplos de consulta SQL
Os exemplos de código a seguir mostram consultas SQL específicas que você pode usar para pesquisar ativos e ajudar a criar suas próprias consultas.
Instâncias de VM do Compute Engine em uma região específica
Além disso, retorne o name e a data de criação.
SELECT
  name,
  resource.DATA.creationTimestamp
FROM
  compute_googleapis_com_Instance
WHERE
  resource.location LIKE '%asia%'
Detalhes de um app em execução em um pod do Kubernetes
Retorne o namespace, a versão e o carimbo de data/hora do app ingress-nginx. Saiba mais sobre as funções JSON usadas no BigQuery.
SELECT
  name AS pod_name,
  JSON_EXTRACT_SCALAR(resource.data.metadata, '$.namespace') AS namespace,
  resource.data.metadata.creationTimestamp AS creation_time,
  JSON_EXTRACT_SCALAR(resource.data.metadata.labels, "$['app.kubernetes.io/name']") AS app_label,
  resource.data.metadata.labels['app.kubernetes.io/version'] AS version
FROM
  k8s_io_Pod
WHERE
  JSON_EXTRACT_SCALAR(resource.data.metadata, '$.namespace') = "default"
  AND JSON_EXTRACT_SCALAR(resource.data.metadata.labels, "$['app.kubernetes.io/name']") = "ingress-nginx"
Quantos conjuntos de dados do BigQuery há em cada projeto
  SELECT
    ancestor AS project,
    COUNT(*)
  FROM
    bigquery_googleapis_com_Dataset
  CROSS JOIN
    UNNEST (ancestors) AS ancestor
  WHERE
    ancestor LIKE '%project%'
  GROUP BY
    ancestor
  ORDER BY
    2 DESC
Quantas instâncias de VM do Compute Engine há em cada região
SELECT
  resource.location,
  COUNT(*)
FROM
  compute_googleapis_com_Instance
GROUP BY
  resource.location
Nome e assetType de todos os recursos em uma região
SELECT
  name,
  assetType
FROM
  STANDARD_METADATA
WHERE
  resource.location LIKE '%asia%'
Buckets do Cloud Storage disponíveis publicamente
Além disso, retorne o name deles.
SELECT
  name
FROM
  IAM_POLICY
CROSS JOIN
  UNNEST(iamPolicy.bindings) AS binding
WHERE
  ('allUsers' IN UNNEST(binding.members)
  OR 'allAuthenticatedUsers' IN UNNEST(binding.members))
  AND assetType = 'storage.googleapis.com/Bucket'
Sub-redes sem instâncias de VM anexadas
SELECT
  subnetwork_table.name
FROM
  compute_googleapis_com_Subnetwork AS subnetwork_table
LEFT JOIN (
  SELECT
    interface.subnetwork AS subnetwork
  FROM
    compute_googleapis_com_Instance
  CROSS JOIN
    UNNEST(resource.DATA.networkInterfaces) AS interface) AS instance_table
ON
  SUBSTR(subnetwork_table.name, 25) = SUBSTR(instance_table.subnetwork,38)
WHERE
  instance_table.subnetwork IS NULL
  AND NOT subnetwork_table.name LIKE '%default%'