2016-08-16 24 views

回答

0

當我的問題只是以部分答案結束時,我討厭它,所以這裏有一個完整的工作示例。如果您將其粘貼到交互式控制檯中,它應該適用於您。 (不要忘記將versionsId設置爲默認的應用程序版本,如果您知道如何使用默認版本,請發表評論。'default','*','any'等。所有沒有大workie)

嚴格通過試錯來實現:

import httplib2 
import logging 
import time 
import webapp2 

from google.appengine.api.app_identity import app_identity 
from googleapiclient.discovery import build 
from oauth2client.client import GoogleCredentials 

credentials = GoogleCredentials.get_application_default() 
service = build('appengine', 'v1', credentials=credentials) 
appsId = app_identity.get_application_id() 
version_list = service.apps().services().versions().list(
     servicesId='default', appsId=appsId).execute() 

for version in version_list['versions']: 
    if not version['id'].startswith('ah-builtin'): 
     rpc_result = service.apps().services().versions().instances().list(
       versionsId=version['id'], servicesId='default', 
       appsId=appsId).execute() 

     if rpc_result: 
      instance_list = rpc_result['instances'] 
     else: 
      instance_list = [] 
     print version['id'], len(instance_list) 
0

我同意這是很難找到的,最接近的一個我能找到的是這個

google.appengine.api.modules.modules.get_num_instances(module=None, version=None)source 

Return the number of instances that are set for the given module version.

這是僅適用於固定模塊,錯誤將引發自動縮放模塊。未來可能會支持自動縮放的模塊。

https://cloud.google.com/appengine/docs/python/refdocs/google.appengine.api.modules.modules

順便說一句,你也可以從擁有總比如

3

你也應該能夠使用最近GA'd App Engine管理API算出這個度量爲Stackdriver監控。有關管理API的好處是,它會爲標準和靈活的工作: https://cloud.google.com/appengine/docs/admin-api/

下面是返回所有實例的給定服務/版本端點:

https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions.instances/list

根據您使用的語言,通常會有一個「Google API客戶端」+語言庫形式的包裝器。

希望這會有所幫助!

+0

唉。在「AppsId」下,他們有「apps/myapp/services/default/versions/v1」的例子。他們實際上的意思是他們希望在該字段中輸入應用程序名稱,「默認」(或者,如果您在應用程序下部署了其他服務,該服務的名稱)以及第三個字段中的應用程序服務版本。該文件也沒有提及您需要哪種權限。不過,您會在「拒絕權限」回覆中獲得。非常典型的雲服務草率文檔樣式。 – Sniggerfardimungus

+0

很高興聽到你能夠解決這個問題。我們會看看更新文檔。 –

+0

謝謝!我剛剛發佈了一個完整的工作代碼示例,但是如果我能夠弄清楚如何獲取所有版本的所有實例,甚至只是默認版本的列表,我都會被定罪。我最近注意到,'默認'版本的概念似乎已從管理控制檯中消失。當發生這種情況時,別名也可能消失了? – Sniggerfardimungus

相關問題