2010-06-03 9 views
7

Ho un'applicazione del motore di Google App che voglio lavorare in modo diverso a seconda se è in esecuzione nel mio ambiente dev locale (cioè con dev_appserver.py) come contro l'esecuzione nel cloud GAE effettivo.API GAE per trovare dove è in esecuzione l'app - macchina locale O cloud gae

Attualmente utilizzo una variabile flag che ho attivato manualmente per ottenerlo. Ma sono sicuro che un giorno mi dimenticherò di cambiarlo e porterò a un problema. Quindi mi piacerebbe sapere se esiste un'API o un altro modo per capire dove è effettivamente in esecuzione l'app GAE?

Grazie.

risposta

1

So che la domanda iniziale era per Python, ma per fare questo per Java utilizzare:

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

Io uso il datastore.get() per tirare valori.

Su dev_appserver, il datastore contiene un'entità "Ambiente" impostata su "locale". Sulla applicazione GAE dev, "Ambiente" è "dev" Sulla applicazione GAE Prod, "Ambiente" è "prod"

È possibile estendere a SVS, ecc