Recommender CLI と API を使用する

ネットワーク アナライザでは Recommender コマンドを使用します。Recommender は、Google Cloud のプロダクトとサービスの使用に関する推奨事項を提供する Google Cloud サービスです。Recommender の分析情報の種類の完全なリストについては、Recommender の分析情報の種類をご覧ください。

分析情報をリクエストする

gcloud

Google Cloud プロジェクトの分析情報を一覧表示するには、次のコマンドを実行します。

gcloud recommender insights list \
    --project=PROJECT_ID \
    --location=LOCATION \
    --insight-type=INSIGHT_TYPE \
    --filter=EXPRESSION \
    --limit=LIMIT \
    --page-size=PAGE_SIZE \
    --sort-by=SORT_BY \
    --format=json

以下のように置き換えます。

  • PROJECT_ID: 分析情報を一覧表示するプロジェクト ID。フォルダ、組織、請求先アカウントのすべての分析情報を一覧表示することもできます。
  • LOCATION: 分析情報の一覧表示の対象となるロケーション(globaleuropeasia-east1us-central1-a など)。
  • INSIGHT_TYPE: リクエストするネットワーク アナライザの分析情報の種類(google.networkanalyzer.vpcnetwork.connectivityInsight など)。

    分析情報の種類の完全なリストについては、分析情報のグループと種類をご覧ください。

次のフィールドは省略可能です。

  • EXPRESSION: リストする各リソースに、このブール値フィルタを適用します。

    式が True と評価された場合、そのアイテムがリストされます。フィルタ式の詳細と例については、$ gcloud topic filters を実行するか、gcloud topic filters のドキュメントをご覧ください。

  • LIMIT: 一覧表示するリソースの最大数。一覧表示するリソースのデフォルト数は無制限です。

  • PAGE_SIZE: ページごとに一覧表示するリソースの最大数。

    デフォルトのページサイズがサービスによって決まっています。それ以外には、ページ設定は行われません。ページ設定は、FILTERLIMIT の前または後に適用されます。

  • SORT_BY: リソースの並べ替えに使うフィールドキー名のカンマ区切りのリスト。

    デフォルトの順序は昇順です。降順を指定するには、フィールドの先頭に ~(チルダ)を付けます。

API

Google Cloud プロジェクトの分析情報を取得するには、projects.locations.insightTypes.insights メソッドGET リクエストを行います。

https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/INSIGHT_TYPE/insights

以下のように置き換えます。

  • PROJECT_ID: プロジェクト ID。
  • LOCATION: 分析情報の一覧表示の対象となるロケーション(globaleuropeasia-east1us-central1-a など)。
  • INSIGHT_TYPE: 一覧表示するネットワーク アナライザの分析情報の種類(google.networkanalyzer.vpcnetwork.connectivityInsight など)。

    分析情報の種類の完全なリストについては、分析情報のグループと種類をご覧ください。

次の例は、このコマンドのレスポンス例を示しています。

{
  "name": "projects/{project_number}/locations/{location}/insightTypes/google.networkanalyzer.hybridconnectivity.dynamicRouteInsight/insights/{insight_id}",
  "description": "Dynamic route is fully shadowed by a peering subnet route",
  "content": {
    "networkUri": "//compute.googleapis.com/projects/{project_id}/global/networks/{network_name}",
    "region": "{location}",
    "ipRange": "{ip_range}",
    "priority": 100,
    "nextHopUri": "//compute.googleapis.com/projects/{project_id}/regions/{location}/vpnTunnels/{tunnel_name}",
    "cloudRouterUri": "//compute.googleapis.com/projects/{project_id}/regions/{location}/routers/{router_name}",
    "shadowingRouteUris": [
      "//compute.googleapis.com/projects/{project_id}/global/routes/{route_name}"
    ],
    "shadowingRouteType": "PEERING_SUBNET"
  },
  "lastRefreshTime": "2022-09-15T21:10:57.187942979Z",
  "observationPeriod": "611870.625920374s",
  "stateInfo": {
    "state": "ACTIVE"
  },
  "category": "PERFORMANCE",
  "targetResources": [
    "//compute.googleapis.com/projects/{project_id}/regions/{location}/vpnTunnels/{tunnel_name}"
  ],
  "insightSubtype": "DYNAMIC_ROUTE_FULLY_SHADOWED",
  "severity": "MEDIUM"
}

分析情報の説明を表示する

gcloud

特定の分析情報の詳細を一覧表示するには、次のコマンドを実行します。

gcloud recommender insights describe INSIGHT_ID \
    --project=PROJECT_ID \
    --location=LOCATION \
    --insight-type=INSIGHT_TYPE

以下のように置き換えます。

  • INSIGHT_ID: 説明を取得する分析情報の ID。
  • PROJECT_ID: 分析情報を含むプロジェクトの ID。
  • LOCATION: 分析情報の一覧表示の対象となるロケーション。
  • INSIGHT_TYPE: google.networkanalyzer.vpcnetwork.connectivityInsight などの分析情報のネットワーク アナライザの分析情報の種類。

    分析情報の種類の完全なリストについては、分析情報のグループと種類をご覧ください。

API

分析情報の詳細を取得するには、projects.locations.insightTypes.insights メソッドGET リクエストを行います。

https://recommender.googleapis.com/v1/projects/PROJECT/locations/LOCATION/insightTypes/INSIGHT_TYPE/insights/INSIGHT_ID

以下のように置き換えます。

  • PROJECT_ID: プロジェクト ID。
  • LOCATION: 分析情報のロケーション。
  • INSIGHT_TYPE: google.networkanalyzer.vpcnetwork.connectivityInsight などの分析情報のネットワーク アナライザの分析情報の種類。

    分析情報の種類の完全なリストについては、分析情報のグループと種類をご覧ください。

  • INSIGHT_ID: 分析情報の分析情報 ID。

分析情報のグループと種類

ネットワーク アナライザの分析情報の詳細については、分析情報のグループと種類をご覧ください。