用于查找应用运行位置的GAE API - 本地计算机或gae云

时间:2010-06-03 02:55:00

标签: google-app-engine

我有一个Google App引擎应用程序,我想要以不同的方式工作,具体取决于它是否在我的本地开发环境中运行(即使用dev_appserver.py),而不是在实际的GAE云中运行。

目前我使用一个标志变量,我手动切换以实现这一点。但我相信有一天我会忘记改变它并导致问题。所以我想知道是否有API或其他方法来确定GAE应用程序实际运行的位置?

感谢。

3 个答案:

答案 0 :(得分:8)

您可以检查SERVER_SOFTWARE环境变量以查看它是Development / X还是Google App Engine / X:

http://code.google.com/appengine/docs/python/runtime.html#The_Environment

答案 1 :(得分:1)

我知道最初的问题是针对python的,但是要为Java使用这个:

if (SystemProperty.environment.value() == SystemProperty.Environment.Value.Production) {
   // running on prod
} else {
   // running on dev
}

答案 2 :(得分:0)

我使用datastore.get()来提取值。

在dev_appserver上,数据存储区包含一个设置为“local”的实体“Environment”。 在GAE开发应用程序中,“环境”是“开发” 在GAE prod应用程序中,“环境”是“prod”

您可以扩展到UAT等。