リソースの検索のサンプル

このページでは、さまざまなリソース検索のユースケースのサンプルクエリを紹介します。

組織内の Google Cloud リソースの一覧表示

組織内の Google Cloud リソースを一覧表示し、出力の形式をタプル(ASSET_TYPE、NAME、PROJECT_ID、LABELS)にします。

  gcloud asset search-all-resources \
  --scope=organizations/123456 \
  --page-size=50 \
  --format='table(assetType.basename(), name.basename(), name.scope(projects).segment(0):label=PROJECT_ID, labels)'

--scopeprojects/12345678 または folders/1234567 に変更すると、組織ではなくプロジェクトまたはフォルダ内を検索できます。

--query 制限を追加して、より具体的なリソース検索結果を取得できます。

--asset-types 制限を追加して、より詳細なタイプのリソースを取得できます。

結果の形式を設定したくない場合は、--flatten--format を削除できます。

table ではなく csv を使用すると、結果の形式を CSV 形式に設定できます。

--format フレーズから .basename() を削除すると、各フィールドの完全な名前を返すことができます。

--limit を追加すると、検索結果のサブセットのみを取得できます。このフラグを指定しないと、すべての検索結果のページが自動的に表示されるようになります。

プロジェクト内の Compute Engine インスタンスの一覧表示

  gcloud asset search-all-resources \
  --scope=projects/12345678 \
  --asset-types='compute.googleapis.com/Instance'

--scopeorganizations/123456 または folders/1234567 に変更すると、プロジェクトではなく、組織またはフォルダ内のすべてのリソースを一覧表示できます。

--query 制限を追加して、より具体的なリソース検索結果を取得できます。

指定された TagKey を持つ Compute Engine インスタンスの一覧表示

このサンプルでは、TagKey を持つタグが直接添付されている Compute Engine インスタンスを一覧表示する方法を示します。namespacedName には env が含まれています。

 gcloud asset search-all-resources \
 --query='tagKeys:env' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, tagKeys, tagValues, tagValueIds)'

指定された TagValue を持つ Compute Engine インスタンスの一覧表示

このサンプルでは、TagValue のタグが直接添付されている Compute Engine インスタンスを一覧表示する方法を示します。namespacedName には prod または sea が含まれ、インスタンス名には instance1 が含まれていません。

 gcloud asset search-all-resources \
 --query='tagValues:(prod OR sea) (NOT name:instance1)' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, tagKeys, tagValues, tagValueIds)'

env という名前のラベルを持つ Compute Engine インスタンスの一覧表示

 gcloud asset search-all-resources \
 --query='labels.env:*' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, labels)'

アクティブでない Compute Engine インスタンスの一覧表示

 gcloud asset search-all-resources \
 --query='NOT state:active' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, state)'

米国内の Compute Engine インスタンスの一覧表示

 gcloud asset search-all-resources \
 --query='location:us-*' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, location)'

説明を持つ Compute Engine インスタンスの一覧表示

説明 instance-prod があり、instance-prod-1INSTANCE-PROD などはない Compute Engine インスタンスを一覧表示します。

 gcloud asset search-all-resources \
 --query='description=instance-prod' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, location)'

すべての Google Cloud リソースをアセットタイプとロケーションごとに計上する

 gcloud asset search-all-resources \
 --scope=organizations/123456 \
 --page-size=500 \
 --format='csv(assetType,location)' \
 | sed 1d | sort | uniq -c

SUSPENDED ステータスの Compute Engine インスタンスの一覧表示

 gcloud asset search-all-resources \
 --query='state=SUSPENDED' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, location)'

2021-01-01 00:00:00 UTC よりも後に作成された Compute Engine インスタンスの一覧表示

 gcloud asset search-all-resources \
 --query='createTime>1609459200' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, location)'

2021-01-01 00:00:00 UTC の後に作成された Compute Engine インスタンスを時間文字列とともに一覧表示する

 gcloud asset search-all-resources \
 --query='createTime>"2021-01-01T00:00:00"' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --format='table(name, assetType, location)'

ACTIVE ステータスの Compute Engine インスタンスを一覧表示して、完全なメタデータを返す

 gcloud asset search-all-resources \
 --query='state=ACTIVE' \
 --scope=organizations/123456 \
 --asset-types='compute.googleapis.com/Instance' \
 --page-size=50 \
 --read-mask='*' \
 --format='table(name, assetType, location, versionedResources)'