I have solved it. 

I have removed *logging.conf* file from the web2py folder, but I don't 
 know if it has undesidered consecuences!

Can it be harmful?

Thanks!

El lunes, 4 de enero de 2016, 11:52:22 (UTC+1), Jacinto Parga escribió:
>
> Hi, 
>
> I upgraded from 2.11.2
>
> I get a error ticket when I deploy to GAE:
>
> Traceback (most recent call last):
>   File 
> "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py"
> , line 240, in Handle
>     handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
>   File 
> "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py"
> , line 299, in _LoadHandler
>     handler, path, err = LoadObject(self._handler)
>   File 
> "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py"
> , line 85, in LoadObject
>     obj = __import__(path[0])
>   File 
> "/base/data/home/apps/s~clubatletismosada/2.389741792186866429/gaehandler.py"
> , line 62 
> <https://console.developers.google.com/debug/resolve_location?appModule=default&appVersion=2&timestampNanos=1451901338552730000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.389741792186866429%2Fgaehandler.py&line=62&project=clubatletismosada>
> , in <module>
>     import gluon.main
>   File 
> "/base/data/home/apps/s~clubatletismosada/2.389741792186866429/gluon/main.py"
> , line 85 
> <https://console.developers.google.com/debug/resolve_location?appModule=default&appVersion=2&timestampNanos=1451901338552730000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.389741792186866429%2Fgluon%2Fmain.py&line=85&project=clubatletismosada>
> , in <module>
>     logging.config.fileConfig(abspath("logging.conf"))
>   File 
> "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/logging/config.py"
> , line 78, in fileConfig
>     handlers = _install_handlers(cp, formatters)
>   File 
> "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/logging/config.py"
> , line 156, in _install_handlers
>     h = klass(*args)
>   File 
> "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/logging/handlers.py"
> , line 117, in __init__
>     BaseRotatingHandler.__init__(self, filename, mode, encoding, delay)
>   File 
> "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/logging/handlers.py"
> , line 64, in __init__
>     logging.FileHandler.__init__(self, filename, mode, encoding, delay)
>   File 
> "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/logging/__init__.py"
> , line 902, in __init__
>     StreamHandler.__init__(self, self._open())
>   File 
> "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/logging/__init__.py"
> , line 925, in _open
>     stream = open(self.baseFilename, self.mode)
> IOError: [Errno 30] Read-only file system: 
> '/base/data/home/apps/s~clubatletismosada/2.389741792186866429/logs/web2py.log'
>
> Maybe I have missed something with the handlers?
>
> El jueves, 24 de diciembre de 2015, 16:21:42 (UTC+1), Massimo Di Pierro 
> escribió:
>>
>> web2py 2.13.3 is out. MERRY CHRISTMAS EVERYBODY!!!
>>
>> It contains some bug fixes for bugs introduced in 2.13.1-2 and most 
>> importantly it contains experimental support for JWT. Here is how it works:
>>
>>         1) instantiate auth with
>>
>>             auth = Auth(db, jwt = {'secret_key':'secret'})
>>
>>         where 'secret' is your own secret string. 
>>
>>         2) Secorate functions that require login but should accept the 
>> JWT token credentials:
>>
>>             @auth.allows_jwt()
>>             @auth.requires_login()
>>             def myapi(): return 'hello %s' % auth.user.email
>>     
>>         Notice jwt is allowed but not required. if user is logged in, 
>> myapi is accessible.
>>
>>         3) Use it!
>>         Now API users can obtain a token with
>>
>>             http://.../app/default/user/jwt?username=...&password=....
>>
>>         (returns json object with a token attribute)
>>         API users can refresh an existing token with
>>
>>             http://.../app/default/user/jwt?token=...
>>
>>         they can authenticate themselves when calling http:/.../myapi by 
>> injecting a header
>>
>>             Authorization: Bearer <the jwt token>
>>
>>         Any additional attributes in the jwt argument of Auth() below:
>>
>>            auth = Auth(db, jwt = {...})
>>
>>         are passed to the constructor of class AuthJWT. Look there for 
>> documentation.
>>
>> Thanks Niphlod again for implementing this. 
>> Please help us check it so we will declare it stable in the next release.
>>
>> Massimo
>>
>>
>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to