First off, awesome job.
There's one thing I'm not sure whether I'm missing something or doing it
wrong but, a command like this one:
appcfg.py --oauth2 -V <some-version> request_logs APP_ROOT /tmp/requests.log
gives me an exception:
TypeError: object of type 'NoneType' has no len()
I noticed in appengine_rpc_httplib2.py, in Send(...) method args:
"...payload: The body of the request, or None to send an empty request." And
later, in the code (line 204), there's this:
headers['content-length'] = str(len(payload))
- and that's precisely where it gives the exception, because request_logs
action eventually calls Send() with payload=None.
I know this is a prerelease so... I was just wondering whether it's me
doing something wrong.
PS I'm using python2.7. full traceback is attached.
On Monday, February 20, 2012 7:03:01 PM UTC+1, Marce (Google) wrote:
>
> Hi,
>
> The 1.6.3 prerelease SDKs are now available to download for Python and
> Java here: http://code.google.com/p/googleappengine/downloads/list
>
> Please see release notes below.
>
> -Marzia
>
> Java Version 1.6.3==================- In the Admin Console, you can use the
> Traffic Splitting feature to send a certain percentage of traffic to a
> non-default application version. The traffic is split by either cookie or IP
> address.- Emails from users that belong a Google Apps domain which are sent
> from a request originating from the same domain will have a DKIM signature
> applied to them.- The instances screen in the Admin Console now has a button
> to shut down a specific instance.- Each application log has a link to the
> instance that served the request. If the instance is no longer serving
> requests, a message will be displayed.- The TaskQueue API now supports the
> ability to tag a Pull Queue task. You may then lease tasks by tag.- Using
> Google Apps wildcard domain mappings, you can access alternate versions of
> your app via a custom domain.- Pull Queue ACLs now support a "writer-email"
> role to support notifications of delivery of tasks to queues.- Push and Pull
> Queues are now listed separately in the SDK development console.- The
> DataNucleus Enhancer command line tool
> (com.google.appengine.tools.enhancer.Enhance) now supports the
> -enhancerVersion flag, which allow you to specify the version of DataNucleus
> with which to enhance your JDO/JPA classes.- The dev appserver command line
> now supports the --generated_dir flag, which allows you to specify a
> directory in which to write files generated by the SDK.- Fixed a
> StackOverflowError when using the Remote API.
> http://code.google.com/p/googleappengine/issues/detail?id=6349
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6349&usg=AFQjCNGW-vOO4iX4ru5A-kuIZXIePWAO4A>
>
> Python Version 1.6.3===============================- In the Admin Console,
> you can use the Traffic Splitting feature to send a certain percentage of
> traffic to a non-default application version. The traffic is split by either
> cookie or IP address.- Emails from users that belong a Google Apps domain
> which are sent from a request originating from the same domain will have a
> DKIM signature applied to them.- Datastore statistics now show the amount of
> storage used by application indexes.- The instances screen in the Admin
> Console now has a button to shut down a specific instance.- Each application
> log has a link to the instance that served the request. If the instance is
> no longer serving requests, a message will be displayed.- The TaskQueue API
> now supports the ability to tag a Pull Queue task. You may then lease tasks
> by tag.- Using Google Apps wildcard domain mappings, you can access alternate
> versions of your app via a custom domain.- Pull Queue ACLs now support a
> "writer_email" role to support notifications of delivery of tasks to
> queues.- Push and Pull Queues are now listed separately in the SDK
> development console.- The NDB datastore api is now generally available.-
> Appcfg now supports OAuth2.- Python 2.7 now uses webapp2 version 2.5.1.-
> Django 1.3 is now available in the Python 2.7 runtime.- GQL Query now
> supports custom type casting for list elements for "IN" filters.- Fixed an
> issue where StringProperty's validate() didn't check the 500 byte limit.
> http://code.google.com/p/googleappengine/issues/detail?id=4030
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D4030&usg=AFQjCNEInKfglRMh3rB_SinS2ZFnVRvFCg>-
> Fixed an issue where the datastore admin didn't work with Federated Login.
> http://code.google.com/p/googleappengine/issues/detail?id=4111
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D4111&usg=AFQjCNG9NgpxiysOpsWKKc1CpVM6GcF61Q>-
> Fixed an issue in the SDK where failing to call _RemoveTxn in the
> datastore_stub_util caused a memory leak:
> http://code.google.com/p/googleappengine/issues/detail?id=6157
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6157&usg=AFQjCNHXI_ixsXsnVQdRh_tcPmvhumJnAw>-
> Code that inherits from the deferred library's TaskHandler can now define
> custom handling of exceptions.
> http://code.google.com/p/googleappengine/issues/detail?id=6478
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6478&usg=AFQjCNHmeE_Rf9Yws21ohSSp9YPgfnIghg>-
> Fixed an issue where logging in the SDK was broken in Windows 7 using
> Python 2.7.2.
> http://code.google.com/p/googleappengine/issues/detail?id=6756
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6756&usg=AFQjCNGutFX8h8eJqD3NM0ImHjGwog-KIw>-
> Fixed an issue in the SDK where the Conversion API call limited was limited
> to 1 MB when the production limit is 2 MB.
> http://code.google.com/p/googleappengine/issues/detail?id=6794
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6794&usg=AFQjCNHz7Kis4CSnUOVYjQUcbYn74OtYnQ>-
> Fixed an issue so that a deferred task retries like a push queue task when
> using the SingularTaskFailure exception:
> http://code.google.com/p/googleappengine/issues/detail?id=6412
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6412&usg=AFQjCNF-ylQDvreSJTpjm1skgVTN1gxzRw>
>
>
On Monday, February 20, 2012 7:03:01 PM UTC+1, Marce (Google) wrote:
>
> Hi,
>
> The 1.6.3 prerelease SDKs are now available to download for Python and
> Java here: http://code.google.com/p/googleappengine/downloads/list
>
> Please see release notes below.
>
> -Marzia
>
> Java Version 1.6.3==================- In the Admin Console, you can use the
> Traffic Splitting feature to send a certain percentage of traffic to a
> non-default application version. The traffic is split by either cookie or IP
> address.- Emails from users that belong a Google Apps domain which are sent
> from a request originating from the same domain will have a DKIM signature
> applied to them.- The instances screen in the Admin Console now has a button
> to shut down a specific instance.- Each application log has a link to the
> instance that served the request. If the instance is no longer serving
> requests, a message will be displayed.- The TaskQueue API now supports the
> ability to tag a Pull Queue task. You may then lease tasks by tag.- Using
> Google Apps wildcard domain mappings, you can access alternate versions of
> your app via a custom domain.- Pull Queue ACLs now support a "writer-email"
> role to support notifications of delivery of tasks to queues.- Push and Pull
> Queues are now listed separately in the SDK development console.- The
> DataNucleus Enhancer command line tool
> (com.google.appengine.tools.enhancer.Enhance) now supports the
> -enhancerVersion flag, which allow you to specify the version of DataNucleus
> with which to enhance your JDO/JPA classes.- The dev appserver command line
> now supports the --generated_dir flag, which allows you to specify a
> directory in which to write files generated by the SDK.- Fixed a
> StackOverflowError when using the Remote API.
> http://code.google.com/p/googleappengine/issues/detail?id=6349
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6349&usg=AFQjCNGW-vOO4iX4ru5A-kuIZXIePWAO4A>
>
> Python Version 1.6.3===============================- In the Admin Console,
> you can use the Traffic Splitting feature to send a certain percentage of
> traffic to a non-default application version. The traffic is split by either
> cookie or IP address.- Emails from users that belong a Google Apps domain
> which are sent from a request originating from the same domain will have a
> DKIM signature applied to them.- Datastore statistics now show the amount of
> storage used by application indexes.- The instances screen in the Admin
> Console now has a button to shut down a specific instance.- Each application
> log has a link to the instance that served the request. If the instance is
> no longer serving requests, a message will be displayed.- The TaskQueue API
> now supports the ability to tag a Pull Queue task. You may then lease tasks
> by tag.- Using Google Apps wildcard domain mappings, you can access alternate
> versions of your app via a custom domain.- Pull Queue ACLs now support a
> "writer_email" role to support notifications of delivery of tasks to
> queues.- Push and Pull Queues are now listed separately in the SDK
> development console.- The NDB datastore api is now generally available.-
> Appcfg now supports OAuth2.- Python 2.7 now uses webapp2 version 2.5.1.-
> Django 1.3 is now available in the Python 2.7 runtime.- GQL Query now
> supports custom type casting for list elements for "IN" filters.- Fixed an
> issue where StringProperty's validate() didn't check the 500 byte limit.
> http://code.google.com/p/googleappengine/issues/detail?id=4030
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D4030&usg=AFQjCNEInKfglRMh3rB_SinS2ZFnVRvFCg>-
> Fixed an issue where the datastore admin didn't work with Federated Login.
> http://code.google.com/p/googleappengine/issues/detail?id=4111
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D4111&usg=AFQjCNG9NgpxiysOpsWKKc1CpVM6GcF61Q>-
> Fixed an issue in the SDK where failing to call _RemoveTxn in the
> datastore_stub_util caused a memory leak:
> http://code.google.com/p/googleappengine/issues/detail?id=6157
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6157&usg=AFQjCNHXI_ixsXsnVQdRh_tcPmvhumJnAw>-
> Code that inherits from the deferred library's TaskHandler can now define
> custom handling of exceptions.
> http://code.google.com/p/googleappengine/issues/detail?id=6478
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6478&usg=AFQjCNHmeE_Rf9Yws21ohSSp9YPgfnIghg>-
> Fixed an issue where logging in the SDK was broken in Windows 7 using
> Python 2.7.2.
> http://code.google.com/p/googleappengine/issues/detail?id=6756
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6756&usg=AFQjCNGutFX8h8eJqD3NM0ImHjGwog-KIw>-
> Fixed an issue in the SDK where the Conversion API call limited was limited
> to 1 MB when the production limit is 2 MB.
> http://code.google.com/p/googleappengine/issues/detail?id=6794
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6794&usg=AFQjCNHz7Kis4CSnUOVYjQUcbYn74OtYnQ>-
> Fixed an issue so that a deferred task retries like a push queue task when
> using the SingularTaskFailure exception:
> http://code.google.com/p/googleappengine/issues/detail?id=6412
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6412&usg=AFQjCNF-ylQDvreSJTpjm1skgVTN1gxzRw>
>
>
On Monday, February 20, 2012 7:03:01 PM UTC+1, Marce (Google) wrote:
>
> Hi,
>
> The 1.6.3 prerelease SDKs are now available to download for Python and
> Java here: http://code.google.com/p/googleappengine/downloads/list
>
> Please see release notes below.
>
> -Marzia
>
> Java Version 1.6.3==================- In the Admin Console, you can use the
> Traffic Splitting feature to send a certain percentage of traffic to a
> non-default application version. The traffic is split by either cookie or IP
> address.- Emails from users that belong a Google Apps domain which are sent
> from a request originating from the same domain will have a DKIM signature
> applied to them.- The instances screen in the Admin Console now has a button
> to shut down a specific instance.- Each application log has a link to the
> instance that served the request. If the instance is no longer serving
> requests, a message will be displayed.- The TaskQueue API now supports the
> ability to tag a Pull Queue task. You may then lease tasks by tag.- Using
> Google Apps wildcard domain mappings, you can access alternate versions of
> your app via a custom domain.- Pull Queue ACLs now support a "writer-email"
> role to support notifications of delivery of tasks to queues.- Push and Pull
> Queues are now listed separately in the SDK development console.- The
> DataNucleus Enhancer command line tool
> (com.google.appengine.tools.enhancer.Enhance) now supports the
> -enhancerVersion flag, which allow you to specify the version of DataNucleus
> with which to enhance your JDO/JPA classes.- The dev appserver command line
> now supports the --generated_dir flag, which allows you to specify a
> directory in which to write files generated by the SDK.- Fixed a
> StackOverflowError when using the Remote API.
> http://code.google.com/p/googleappengine/issues/detail?id=6349
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6349&usg=AFQjCNGW-vOO4iX4ru5A-kuIZXIePWAO4A>
>
> Python Version 1.6.3===============================- In the Admin Console,
> you can use the Traffic Splitting feature to send a certain percentage of
> traffic to a non-default application version. The traffic is split by either
> cookie or IP address.- Emails from users that belong a Google Apps domain
> which are sent from a request originating from the same domain will have a
> DKIM signature applied to them.- Datastore statistics now show the amount of
> storage used by application indexes.- The instances screen in the Admin
> Console now has a button to shut down a specific instance.- Each application
> log has a link to the instance that served the request. If the instance is
> no longer serving requests, a message will be displayed.- The TaskQueue API
> now supports the ability to tag a Pull Queue task. You may then lease tasks
> by tag.- Using Google Apps wildcard domain mappings, you can access alternate
> versions of your app via a custom domain.- Pull Queue ACLs now support a
> "writer_email" role to support notifications of delivery of tasks to
> queues.- Push and Pull Queues are now listed separately in the SDK
> development console.- The NDB datastore api is now generally available.-
> Appcfg now supports OAuth2.- Python 2.7 now uses webapp2 version 2.5.1.-
> Django 1.3 is now available in the Python 2.7 runtime.- GQL Query now
> supports custom type casting for list elements for "IN" filters.- Fixed an
> issue where StringProperty's validate() didn't check the 500 byte limit.
> http://code.google.com/p/googleappengine/issues/detail?id=4030
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D4030&usg=AFQjCNEInKfglRMh3rB_SinS2ZFnVRvFCg>-
> Fixed an issue where the datastore admin didn't work with Federated Login.
> http://code.google.com/p/googleappengine/issues/detail?id=4111
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D4111&usg=AFQjCNG9NgpxiysOpsWKKc1CpVM6GcF61Q>-
> Fixed an issue in the SDK where failing to call _RemoveTxn in the
> datastore_stub_util caused a memory leak:
> http://code.google.com/p/googleappengine/issues/detail?id=6157
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6157&usg=AFQjCNHXI_ixsXsnVQdRh_tcPmvhumJnAw>-
> Code that inherits from the deferred library's TaskHandler can now define
> custom handling of exceptions.
> http://code.google.com/p/googleappengine/issues/detail?id=6478
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6478&usg=AFQjCNHmeE_Rf9Yws21ohSSp9YPgfnIghg>-
> Fixed an issue where logging in the SDK was broken in Windows 7 using
> Python 2.7.2.
> http://code.google.com/p/googleappengine/issues/detail?id=6756
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6756&usg=AFQjCNGutFX8h8eJqD3NM0ImHjGwog-KIw>-
> Fixed an issue in the SDK where the Conversion API call limited was limited
> to 1 MB when the production limit is 2 MB.
> http://code.google.com/p/googleappengine/issues/detail?id=6794
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6794&usg=AFQjCNHz7Kis4CSnUOVYjQUcbYn74OtYnQ>-
> Fixed an issue so that a deferred task retries like a push queue task when
> using the SingularTaskFailure exception:
> http://code.google.com/p/googleappengine/issues/detail?id=6412
> <http://www.google.com/url?q=http://code.google.com/p/googleappengine/issues/detail%3Fid%3D6412&usg=AFQjCNF-ylQDvreSJTpjm1skgVTN1gxzRw>
>
>
--
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/google-appengine/-/dURZnUHqELQJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine?hl=en.
Traceback (most recent call last):
File "./appcfg.py", line 125, in <module>
run_file(__file__, globals())
File "./appcfg.py", line 121, in run_file
execfile(script_path, globals_)
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
3999, in <module>
main(sys.argv)
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
3990, in main
result = AppCfgApp(argv).Run()
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
2521, in Run
self.action(self)
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
3756, in __call__
return method()
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
3311, in RequestLogs
logs_requester.DownloadLogs()
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
1108, in DownloadLogs
new_offset = self.RequestLogLines(tf, last_offset)
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appcfg.py", line
1162, in RequestLogLines
response = self.rpcserver.Send('/api/request_logs', payload=None, **kwds)
File
"/Users/alex/Downloads/google_appengine/google/appengine/tools/appengine_rpc_httplib2.py",
line 204, in Send
headers['content-length'] = str(len(payload))
TypeError: object of type 'NoneType' has no len()