Re: [google-appengine] is there any way to access data of another app better than rpc?

2014-03-28 Thread thor.djdq
thank you. of course the apps are both on gae. i will try it.

2014-03-27 14:47 GMT+08:00, Vinny P vinny...@gmail.com:
 On Wed, Mar 26, 2014 at 3:37 AM, thor.djdq saintt...@gmail.com wrote:

 can you just show me the other ways?
 there is no determined use case now.



 Choosing the best way to access data depends on the use case, so it would
 probably be better to figure out the use case first. Nevertheless, since
 you asked for alternatives:

 1. Write a simple REST API to access and modify the app data. Probably the
 best solution since you can customize the API to emit and accept data using
 your preferred syntax (JSON or XML, etc).
 http://stackoverflow.com/questions/19357298/what-is-difference-between-web-service-and-rpc

 2. Assuming the app you want to access is on App Engine, you can directly
 connect with the Remote API and use resources under the application's name:
 https://developers.google.com/appengine/docs/java/tools/remoteapi

 3. Again assuming the app is on App Engine, you can access the different
 persistent data services directly. For instance, the datastore can be
 accessed through the Cloud Datastore service:
 https://developers.google.com/datastore/docs/getstarted/start_java/ . The
 Cloud SQL and Cloud Storage services can also be accessed by different
 applications by whitelisting their IDs.


 -
 -Vinny P
 Technology  Media Advisor
 Chicago, IL

 App Engine Code Samples: http://www.learntogoogleit.com

 --
 You received this message because you are subscribed to a topic in the
 Google Groups Google App Engine group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/google-appengine/d_9D597_eQo/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 google-appengine+unsubscr...@googlegroups.com.
 To post to this group, send email to google-appengine@googlegroups.com.
 Visit this group at http://groups.google.com/group/google-appengine.
 For more options, visit https://groups.google.com/d/optout.


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


Re: [google-appengine] App Engine Console API

2014-03-28 Thread Siegfried Hirsch
Take a look into https://developers.google.com/cloud/sdk/
This could also provide some insights that help you

- Siegfried

On Thu, Mar 27, 2014 at 8:34 PM, Vinny P vinny...@gmail.com wrote:
 On Thu, Mar 27, 2014 at 2:22 PM, Pavel Tsurko ptsu...@google.com wrote:

 Are there any API for accessing App Engine instances/versions/etc?
 We are deploying a lot of versions of our applications for testing and
 what i want to do - is to retrieve list of all versions created by
 particular user and display them for easy of access.
 I am thinking about creating Chrome Extension to display those versions
 and provide links to all of them.

 Are there any ways to achieve this?



 Within an application, you can list modules and versions available by going
 through the ModulesService (
 https://developers.google.com/appengine/docs/java/javadoc/com/google/appengine/api/modules/ModulesService
 ). In particular, see the getVersions and getModules methods.

 But if you want more detailed information - such as the data available on
 the App Engine console - that's currently unavailable from API sources. More
 than likely you'll have to write a parser to scrape that information off the
 console.

 However, seeing as you're a Google employee (judging from your @google.com
 email address), you may have access to internal Google APIs. You're probably
 better off going that route :-)


 -
 -Vinny P
 Technology  Media Advisor
 Chicago, IL

 App Engine Code Samples: http://www.learntogoogleit.com

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to google-appengine+unsubscr...@googlegroups.com.
 To post to this group, send email to google-appengine@googlegroups.com.
 Visit this group at http://groups.google.com/group/google-appengine.
 For more options, visit https://groups.google.com/d/optout.



-- 
Siegfried Hirsch
hhS - Lipowskystr. 16 - 81373 München - (089) 5484 3564 - skype:shirsch
Fax +49 - (0)89 - 943 992 698 - http://siegfriedhirsch.blogspot.com

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] Re: What to do with a bad instance?

2014-03-28 Thread Alex Burgel
Thanks Tim. That was the problem.

I have warmup requests on, but the first request was a non-warmup loading 
request which got a DeadlineExceededError. Your fix probably wouldn't work 
since its not a warmup request.

I found this bug report, marked as Won't Fix. It provides some background 
in case anyone else runs into it. Looks like there's no good answer.

https://code.google.com/p/googleappengine/issues/detail?id=1409

--Alex

On Thursday, March 27, 2014 2:27:15 AM UTC-4, timh wrote:

 Go back through the logs for the instance, and see if it had a 
 DeadlineExceeded Error during startup.  

 My guess is you are not using warmup requests, and the instance hasn't 
 started properly leaving imports in a bad state.

 This used to happen a lot in the early days when startup times in python 
 could be unreliable on M/S.

 The only way to deal with it at the time (because you couldn't kill 
 instances) was to wrap the entire handler in a try block, and if you got an 
 import error inside the handler
 I would allocate enough memory to kill the instance.

 Cheers

 Tim

 On Thursday, March 27, 2014 9:42:27 AM UTC+8, Alex Burgel wrote:

 Every so often (once a month or less), I get an instance that just 
 doesn't work. Every request fails with some error in library code that 
 indicates something is profoundly screwed up, like an import fails or some 
 line of obviously correct code throws an exception.

 When this has happened in the past, I would get a bunch of error emails 
 and I would just shutdown the instance and hope that it was a fluke. Today 
 it happened while I was on a flight, so for about 3 hours, this broken 
 instance was returning errors for most of the requests hitting my app.

 This is the exception (app named changed to protect the innocent):

 Traceback (most recent call last):

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/handlers/base.py,
  
 line 101, in get_response
 resolver_match = resolver.resolve(request.path_info)

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/urlresolvers.py,
  
 line 318, in resolve
 for pattern in self.url_patterns:

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/urlresolvers.py,
  
 line 346, in url_patterns
 patterns = getattr(self.urlconf_module, urlpatterns, 
 self.urlconf_module)

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/urlresolvers.py,
  
 line 341, in urlconf_module
 self._urlconf_module = import_module(self.urlconf_name)

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/utils/importlib.py, 
 line 40, in import_module
 __import__(name)

   File /base/data/home/apps/s~xxx/8.374612775992938880/urls.py, line 
 4, in module
 from swaagit import admin as swaag_admin, sites

   File /base/data/home/apps/s~xx/8.374612775992938880/xxx/admin.py, 
 line 12, in module
 from mapreduce.site import site as mapreduce_site

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/xxx/mapreduce/site.py, 
 line 5, in module
 from mapreduce import base_handler

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/mapreduce/base_handler.py, 
 line 44, in module
 from mapreduce import model

   File /base/data/home/apps/s~xxx/8.374612775992938880/mapreduce/model.py, 
 line 61, in module
 from mapreduce import context

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/mapreduce/context.py, 
 line 40, in module
 from google.appengine.ext import ndb

   File /base/data/home/runtimes/python27/python27_lib/versions/1/
 google/appengine/ext/ndb/__init__.py, line 8, in module
 __all__ += tasklets.__all__

 NameError: name 'tasklets' is not defined

 Clearly a NameError in SDK code means that something is very wrong. Yet, 
 this instance happily continued serving traffic for hours.

 Are there not some smoke tests or verification tests that are run before 
 an instance is put into production? How does everybody else deal with this 
 problem?

 --Alex



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] Server error trying to delete user in web console permissions view

2014-03-28 Thread Tony França


Not sure if this is the right place for this, forgive me if it isn't.

I also opened a ticket at 
https://code.google.com/p/googleappengine/issues/detail?id=10744thanks=10744ts=1396030335

Steps to reproduce:


1) I go to appengine.google.com
2) I select one of the applications I have access to (either qmaghomolog or 
qmagicobr2)
3) On the left navigation bar, I click on Permissions (under Administration)
4) I see myself listed with Role = Owner
5) I click the Remove button for another user

BUG: I get a new page that says only

 Server Error
 A server error has occurred.
 (link) Return to Applications screen »

And no further information is given.

Please help :-)


Cheers

Tony

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] auto_id_policy error in cloud

2014-03-28 Thread GAEfan
I have an app that, for some reason, is still adding the short (5 or 6 
digit) auto IDs for new entities in production.  This is not the 
expected/desired behavior.  I am using v1.9.1.

Adding-  auto_id_policy: default  to app.yaml yields the following error:

Deployment failed, details: { Failed to load application, Line 5, column 
15: Unable to find property 'auto_id_policy' on class: 
com.google.cloud.services.infrastructure.controller.appengine.PreparedAppYaml$PreparedAppYamlInner,
 
none}

Is there some other reason why this app would still be using the short IDs? 
   I would prefer the newer (16 digit) scattered IDs.  Thanks.


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] 1.9.2 Pre-Release SDKs are now available.

2014-03-28 Thread Richmond Manzana
We want to inform you that the pre-release SDKs for Python, PHP and Java 
are now available.

As previously 
announcedhttp://google-opensource.blogspot.com/2013/05/a-change-to-google-code-download-service.html
 in 
a Google code site announcement, new App Engine Binaries are no longer 
available at:
http://code.google.com/p/googleappengine/downloads/list

Older (deprecated) binaries will remain available at the code.google.com
 site.

There are a few changes and fixes related to the 1.9.2 release notes, 
however numerous internal performance and reliability improvements have 
been made.

1.9.2 Pre-release SDKs are now available at 
https://developers.google.com/appengine/downloads#Google_App_Engine_Pre_Release_SDKs

Please see the pre-release notes below.

Python
==
N/A

PHP
==

- Users now have the ability to embed images in emails via the Content-Id  
attachment header.
https://code.google.com/p/googleappengine/issues/detail?id=965- Fixed an issue 
with the Google Cloud Storage upload proxy truncating POST  field data when it 
is longer than 80 characters. 
https://code.google.com/p/googleappengine/issues/detail?id=10355- Fixed an 
issue with default max sized uploads no longer handling unlimited  size 
uploads.https://code.google.com/p/googleappengine/issues/detail?id=10727


Java
=
N/A


Cheers,

Richmond Manzana
Technical Program Manager
Google App Engine

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] dev_appserver.py removed from GoogleAppEngineLauncher 1.9.1

2014-03-28 Thread GAEfan
Why has dev_appserver.py been removed from google.appengine.tools directory 
in GoogleAppEngineLauncher 1.9.1 ?  

When will google-cloud-sdk be updated to include v1.9.1 of 
GoogleAppEngineLauncher?

Is using GoogleAppEngineLauncher inside google-cloud-sdk (with unbundled 
contents) the best practice going forward?  I think that is a hint from 
Google to start using the new google-cloud-sdk version.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] Re: What to do with a bad instance?

2014-03-28 Thread timh
Hi Alex

It could.  What we did was wrap the entire handler in a try: block, then in 
the except section set a instance/module level variable to signal a failed 
startup (error in the handler)

Then if there was time we would try and allocate enough memory to kill the 
process.  After DEE you might have a grace period of just under second 
before the instance is killed.

If the instance didn't get killed then when n the second request hit the 
server it would see the instance defined flag then immediately allocate 
enough memory to kill the instance

So it wouldn't really matter what type of request (warmup or normal) that 
hit the instance

Cheers

Tim


On Saturday, March 29, 2014 12:18:03 AM UTC+8, Alex Burgel wrote:

 Thanks Tim. That was the problem.

 I have warmup requests on, but the first request was a non-warmup loading 
 request which got a DeadlineExceededError. Your fix probably wouldn't work 
 since its not a warmup request.

 I found this bug report, marked as Won't Fix. It provides some background 
 in case anyone else runs into it. Looks like there's no good answer.

 https://code.google.com/p/googleappengine/issues/detail?id=1409

 --Alex

 On Thursday, March 27, 2014 2:27:15 AM UTC-4, timh wrote:

 Go back through the logs for the instance, and see if it had a 
 DeadlineExceeded Error during startup.  

 My guess is you are not using warmup requests, and the instance hasn't 
 started properly leaving imports in a bad state.

 This used to happen a lot in the early days when startup times in python 
 could be unreliable on M/S.

 The only way to deal with it at the time (because you couldn't kill 
 instances) was to wrap the entire handler in a try block, and if you got an 
 import error inside the handler
 I would allocate enough memory to kill the instance.

 Cheers

 Tim

 On Thursday, March 27, 2014 9:42:27 AM UTC+8, Alex Burgel wrote:

 Every so often (once a month or less), I get an instance that just 
 doesn't work. Every request fails with some error in library code that 
 indicates something is profoundly screwed up, like an import fails or some 
 line of obviously correct code throws an exception.

 When this has happened in the past, I would get a bunch of error emails 
 and I would just shutdown the instance and hope that it was a fluke. Today 
 it happened while I was on a flight, so for about 3 hours, this broken 
 instance was returning errors for most of the requests hitting my app.

 This is the exception (app named changed to protect the innocent):

 Traceback (most recent call last):

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/handlers/base.py,
  
 line 101, in get_response
 resolver_match = resolver.resolve(request.path_info)

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/urlresolvers.py,
  
 line 318, in resolve
 for pattern in self.url_patterns:

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/urlresolvers.py,
  
 line 346, in url_patterns
 patterns = getattr(self.urlconf_module, urlpatterns, 
 self.urlconf_module)

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/core/urlresolvers.py,
  
 line 341, in urlconf_module
 self._urlconf_module = import_module(self.urlconf_name)

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/django/utils/importlib.py,
  
 line 40, in import_module
 __import__(name)

   File /base/data/home/apps/s~xxx/8.374612775992938880/urls.py, line 
 4, in module
 from swaagit import admin as swaag_admin, sites

   File /base/data/home/apps/s~xx/8.374612775992938880/xxx/admin.py, 
 line 12, in module
 from mapreduce.site import site as mapreduce_site

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/xxx/mapreduce/site.py, 
 line 5, in module
 from mapreduce import base_handler

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/mapreduce/base_handler.py,
  
 line 44, in module
 from mapreduce import model

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/mapreduce/model.py, 
 line 61, in module
 from mapreduce import context

   File 
 /base/data/home/apps/s~xxx/8.374612775992938880/mapreduce/context.py, 
 line 40, in module
 from google.appengine.ext import ndb

   File /base/data/home/runtimes/python27/python27_lib/versions/1/
 google/appengine/ext/ndb/__init__.py, line 8, in module
 __all__ += tasklets.__all__

 NameError: name 'tasklets' is not defined

 Clearly a NameError in SDK code means that something is very wrong. Yet, 
 this instance happily continued serving traffic for hours.

 Are there not some smoke tests or verification tests that are run before 
 an instance is put into production? How does everybody else deal with this 
 problem?

 --Alex



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to