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×tampNanos=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×tampNanos=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.

