概要
このページでは、Apigee Management(APIM)API から Apigee シャドー API 検出を管理するためのリファレンス構文について説明します。リクエスト内の各フィールドの詳細など、シャドー API 検出に関連する Management API のドキュメントについては、https://cloud.google.com/apigee/docs/reference/apis/apim/rest と https://cloud.google.com/apigee/docs/reference/apis/apim/rpc をご覧ください。
シャドー API 検出の概要と、Cloud コンソールで Apigee UI を使用して管理する手順については、シャドー API 検出をご覧ください。シャドー API 検出の一般的な動作と制限事項については、動作と制限事項をご覧ください。
リファレンス API 呼び出しのパラメータ
このページの API 呼び出しでは、次のパラメータを使用できます。これらは、Apigee アカウント情報(プロジェクトなど)またはモニタリング ジョブの作成時に使用される情報のいずれかを表します。各フィールドの詳細については、モニタリング ジョブを作成するをご覧ください。
- OBSERVATION_JOB_LOCATION はモニタリング ジョブの場所です。
- OBSERVATION_JOB_NAME はモニタリング ジョブの名前です。
- OBSERVATION_SOURCE_LOCATION は、モニタリング ジョブのソースの場所です。
- OBSERVATION_SOURCE_NAME はモニタリング ソースの名前です。
- PROJECT は Apigee プロジェクトです。
モニタリング ジョブを作成する
モニタリング ジョブを作成するには、複数の手順または API リクエストを実行する必要があります。
- モニタリング ソースを作成する: 既存のモニタリング ソースを使用するのではなくモニタリング ソースを新規作成するには、モニタリング ソースの詳細を指定して、observationSources エンドポイントに POST リクエストを送信します。
curl \ https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources?observation_source_id=OBSERVATION_SOURCE_NAME \ -X POST \ -H 'Content-type: application/json' \ -d @- <<'EOF' { "gclbObservationSource": { "pscNetworkConfigs": [ { "network": "projects/PROJECT/global/networks/{network_name}", "subnetwork":"projects/PROJECT/regions/OBSERVATION_SOURCE_LOCATION/subnetworks/{subnet_name}" } ] } } EOF
モニタリング ソースの作成には数分かかります。作成が完了すると、LRO が開始され、次のようなレスポンスが返されます。{ "name": "projects/{project/locations/OBSERVATION_SOURCE_LOCATION/operations/operation-
", "metadata": { "@type": "type.googleapis.com/google.cloud.apim.vl.ApiDiscoveryOperationMetadata", "createTime": " ", "target": "projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "vl" }, "done": false } - 新規作成したモニタリング ソースを表示するには:
curl \ https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME
- モニタリング ジョブを作成する: 作成したソースを使用してシャドー API を検索するジョブを作成します。
curl \ https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs?observation_job_id=OBSERVATION_JOB_NAME \ -X POST \ -H 'Content-type: application/json' \ -d @- <<'EOF' { "sources": [ "projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME" ] } EOF
モニタリング ジョブを有効にする
新しいモニタリング ジョブまたは無効になっている既存のジョブを有効にするには、次のコマンドを使用します。
curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME:enable \ -X POST \ -H 'Content-type: application/json' \ -d @- <<'EOF' {} EOF
検出された API を表示する
有効なモニタリング ジョブによって検出された API を表示するには、次のコマンドを送信します。
curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations \ -X GET
モニタリング結果のタグを管理する
結果にすでに追加されているタグを一覧表示するには:
curl -H "https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION:listApiObservationTags"
タグを管理するには:
curl -H "Content-Type: appication/json" \ "https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations:batchEditTags" \ -X POST -d @- <<'EOF' { "requests": [ { "apiObservationId": "API_OBSERVATION_ID", "tagActions": [ { "tag": "demo", "action": "REMOVE" }, { "tag": "Needs Attentions", "action": "ADD" }] } ] } EOF
モニタリング ジョブを無効にする
このリクエストを送信すると、モニタリング ジョブが無効になります。削除されることはありません。
curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationsJobs/OBSERVATION_JOB_NAME:disable \ -X POST \ -H 'Content-type: application/json' \ -d @- <<'EOF' { }
モニタリング ジョブを削除する
次のリクエストを送信すると、モニタリング ジョブが削除されます。
curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME
モニタリング ソースを削除する
次のリクエストを送信すると、モニタリング ソースが削除されます。
curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME