總覽
本頁面提供參考語法,說明如何透過 Apigee 管理 (APIM) API 管理 Apigee Shadow API Discovery。如要瞭解與 Shadow API Discovery 相關的管理 API 說明文件,包括要求中每個欄位的資訊,請前往 https://cloud.google.com/apigee/docs/reference/apis/apim/rest 和 https://cloud.google.com/apigee/docs/reference/apis/apim/rpc
如要瞭解 Shadow API Discovery 的總覽,以及如何使用 Cloud 控制台中的 Apigee UI 管理這項功能,請參閱「Shadow API Discovery」。如要瞭解 Shadow API Discovery 的一般行為和限制,請參閱「行為和限制」。
參考 API 呼叫中的參數
本頁面的 API 呼叫可使用下列參數,這些參數是指您的 Apigee 帳戶資訊 (例如專案),或是建立觀測作業時使用的資訊。如要進一步瞭解每個欄位,請參閱「建立觀測工作」。
- OBSERVATION_JOB_LOCATION 是觀測工作的位置。
- OBSERVATION_JOB_NAME 是觀測工作名稱。
- OBSERVATION_SOURCE_LOCATION 是觀測工作的來源位置。
- OBSERVATION_SOURCE_NAME 是觀察來源名稱。
- PROJECT 是您的 Apigee 專案。
建立觀測工作
建立觀測工作需要多個步驟/API 要求。
- 建立觀測來源:如要建立新的觀測來源,而非使用現有來源,請對 observationSources 端點提出 POST 要求,並提供觀測來源詳細資料。
建立觀測來源需要幾分鐘的時間,並啟動 LRO,回應如下: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
{ "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
- 建立觀測工作:使用您剛建立的來源,建立尋找 Shadow 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