このセクションでは、Apigee API を使用して API プロキシのデプロイ ステータスを確認する方法について説明します。
- 新しい API プロキシの作成とデプロイの説明に従って、テスト API プロキシをデプロイします。
- Apigee 組織管理者のサービス アカウント キーを含む JSON ファイルを特定します。このサービス アカウントとキーは、Synchronizer アクセスを有効にするで作成したものです。
- 次の 2 つのコマンドを実行して、トークンを取得します。
export GOOGLE_APPLICATION_CREDENTIALS=org-admin-service-account-file
export TOKEN=$(gcloud auth application-default print-access-token)
ここで org-admin-service-account-file は、Apigee 組織管理者のロールでダウンロードしたサービス アカウント キーのシステム上のパスです。
- 次のパーツを使用して、リビジョンの API を呼び出します。
- ベース URL:
https://apigee.googleapis.com/v1
- エンドポイント URL:
/organizations/my-organization/environments/test/apis/myproxy/revisions/1/deployments
- プロトコル:
HTTPS
- メソッド:
GET
- ヘッダー:
"Authorization: Bearer $TOKEN"
次の例では、これらの設定を含む
curl
を使用して、デプロイ リビジョンの API を呼び出します。curl "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/apis/myproxy/revisions/1/deployments" \ -X GET -H "Authorization: Bearer $TOKEN"
次のようなレスポンスが返されます。
{ "deployments": [ { "environment": "test", "apiProxy": "myproxy", "revision": "1", "deployStartTime": "1560782439002", "pods": [ { "podName": "apigee-runtime-my-organization-test-blue-56b642fv429v", "appVersion": "self", "deploymentStatusTime": "1560787671389", "deploymentStatus": "deployed", "statusCode": "200", "statusCodeDetails": "Deployment Success", "deploymentTime": "1560782471370", "podStatus": "active", "podStatusTime": "1560787671389" }, { "podName": "apigee-runtime-my-organization-test-blue-564422f7dmwj", "appVersion": "self", "deploymentStatusTime": "1560787670121", "deploymentStatus": "deployed", "statusCode": "200", "statusCodeDetails": "Deployment Success", "deploymentTime": "1560782485204", "podStatus": "active", "podStatusTime": "1560787670121" } ], "basePath": "/" } ] }
この例のレスポンスでは、2 つの Pod に関する API プロキシのステータスが表示されます。デプロイ ステータスは、両方の Pod で
deployed
になっています。クラスタの構成に応じて、API プロキシのデプロイ ステータスに表示される Pod の数が異なることがあります。
レスポンスが空の場合やエラーが発生した場合は、次の点を確認してください。
- 正しいベース URL を使用していること。ハイブリッドのベース URL は、Edge API のベース URL と同じではありません。
https://apigee.googleapis.com/v1
を使用してください。 - 正しいエンドポイント URL を使用していること。リビジョンは「1」で、エンドポイントは
/organizations/my_organization/environments/test/apis/myproxy/revisions/1/deployments
です。リクエストに存在しないリビジョンを指定すると、次のような空のレスポンスが返されます:{ }
- リクエストで指定した組織にアクセスする権限があること。
- トークンの有効期限が切れていないこと。切れている場合は、OAuth 2.0 アクセス トークンの取得の説明に従って新しいトークンを再生成します。
"Authorization: Bearer $TOKEN"
ヘッダーを引用符で囲んでいること。
- ベース URL: