Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --------------------------------------------------------------------------------
- INFO in middleware [/usr/local/lib/python3.6/site-packages/ddtrace/contrib/flask/middleware.py:31]:
- initializing trace middleware
- --------------------------------------------------------------------------------
- Prearing test env ['manage.py', 'test']
- 2019-03-08T18:34:17.363781Z [error ] stdlib_log [ddtrace.writer] message=cannot send services to localhost:8126: [Errno 99] Address not available
- The files belonging to this database system will be owned by user "postgres".
- This user must also own the server process.
- The database cluster will be initialized with locales
- COLLATE: C
- CTYPE: C.UTF-8
- MESSAGES: C
- MONETARY: C
- NUMERIC: C
- TIME: C
- The default database encoding has accordingly been set to "UTF8".
- The default text search configuration will be set to "english".
- Data page checksums are disabled.
- creating directory /tmp/pgtests ... ok
- creating subdirectories ... ok
- selecting default max_connections ... 100
- selecting default shared_buffers ... 128MB
- selecting dynamic shared memory implementation ... posix
- creating configuration files ... ok
- running bootstrap script ... ok
- performing post-bootstrap initialization ... sh: locale: not found
- 2019-03-08 18:34:17.822 UTC [38] WARNING: no usable system locales were found
- ok
- syncing data to disk ... ok
- Success.
- WARNING: enabling "trust" authentication for local connections
- You can change this by editing pg_hba.conf or using the option -A, or
- --auth-local and --auth-host, the next time you run initdb.
- waiting for server to start.... done
- server started
- create_test_db.sql: No such file or directory
- CREATE DATABASE
- CREATE ROLE
- CREATE DATABASE
- CREATE ROLE
- 63:C 08 Mar 18:34:24.294 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
- 63:C 08 Mar 18:34:24.294 # Redis version=4.0.11, bits=64, commit=2857805f, modified=0, pid=63, just started
- 63:C 08 Mar 18:34:24.294 # Configuration loaded
- Running tests.
- ============================= test session starts ==============================
- platform linux -- Python 3.6.8, pytest-3.1.1, py-1.8.0, pluggy-0.4.0
- rootdir: /usr/src/app, inifile:
- plugins: cov-2.5.1
- collected 101 items
- tests/test_apigee.py ...
- tests/test_chatbot.py ...F...F.
- tests/test_oauth.py .....F...F.FF
- tests/test_oauth_utils.py .................
- tests/test_user.py ..FFFF..F.........F.F....FFFFFF...............F..FF
- tests/test_utils.py .
- tests/test_vaporizer.py .......
- ----------- coverage: platform linux, python 3.6.8-final-0 -----------
- Name Stmts Miss Branch BrPart Cover Missing
- ------------------------------------------------------------------------
- auth/__init__.py 9 6 0 0 33% 7-17
- auth/apigee/__init__.py 0 0 0 0 100%
- auth/apigee/views.py 22 1 6 2 89% 16, 15->16, 26->29
- auth/app.py 81 17 8 4 76% 29-30, 49-55, 63-64, 83-84, 91-93, 95-97, 124, 41->44, 60->63, 90->91, 94->95
- auth/chatbot/__init__.py 0 0 0 0 100%
- auth/chatbot/utils.py 38 8 15 7 72% 22-23, 37, 41, 44, 47, 50, 65, 36->37, 40->41, 43->44, 46->47, 49->50, 60->exit, 60->65
- auth/chatbot/views.py 61 9 4 1 85% 32-34, 41-42, 73-74, 104-105, 40->41
- auth/config.py 92 0 0 0 100%
- auth/controllers.py 18 3 6 2 79% 17-19, 16->17, 24->27
- auth/error_handlers.py 35 10 3 0 66% 35-36, 42-46, 58-59, 71-72
- auth/extensions.py 26 0 0 0 100%
- auth/logging/__init__.py 2 0 0 0 100%
- auth/logging/config.py 24 1 2 1 92% 51, 50->51
- auth/logging/processors.py 29 12 12 1 49% 13, 19-21, 26-27, 44-49, 12->13
- auth/mailer.py 32 4 6 1 87% 23-24, 41-42, 40->41
- auth/middleware.py 54 2 10 3 92% 78-79, 35->45, 51->55, 58->60
- auth/models.py 173 15 34 7 87% 30, 63, 70, 92, 94-95, 107-108, 127, 131-133, 141, 228-229, 62->63, 67->70, 91->92, 93->94, 106->107, 126->127, 140->141
- auth/oauth/__init__.py 0 0 0 0 100%
- auth/oauth/exceptions.py 9 0 4 1 92% 10->9
- auth/oauth/providers.py 7 0 0 0 100%
- auth/oauth/utils.py 106 13 29 1 87% 65, 79-82, 180-191, 64->65
- auth/oauth/views.py 90 17 2 0 82% 69-71, 99-100, 121-122, 141-146, 160-165
- auth/token/__init__.py 0 0 0 0 100%
- auth/token/decorators.py 49 10 18 5 75% 18-21, 53-54, 56-57, 61-62, 15->18, 52->53, 55->56, 60->61, 63->65
- auth/token/storage.py 65 21 20 7 60% 15, 32-40, 43-51, 66-70, 90-93, 14->15, 62->exit, 65->66, 72->76, 79->exit, 80->83, 87->90
- auth/token/utils.py 78 47 22 0 37% 14-45, 49, 66-67, 77-78, 85, 89-91, 95-106
- auth/utils.py 56 15 20 5 66% 27, 29, 35-42, 55-61, 26->exit, 26->27, 28->29, 54->55, 62->50
- auth/vaporizer/__init__.py 0 0 0 0 100%
- auth/vaporizer/utils.py 30 22 8 0 21% 15-36
- auth/vaporizer/views.py 47 6 6 1 87% 29, 41-45, 28->29
- auth/views.py 275 124 94 9 50% 26, 40, 49, 51, 54-63, 87-102, 110-121, 132-137, 140-158, 164-165, 171, 181-186, 225, 227, 230-243, 254-256, 269-284, 291-308, 320, 361-364, 39->40, 48->49, 50->51, 85->87, 130->132, 180->181, 224->225, 226->227, 318->320
- ------------------------------------------------------------------------
- TOTAL 1508 363 329 58 71%
- Coverage HTML written to dir htmlcov
- =================================== FAILURES ===================================
- ________________ ChatbootGoogleCallbackTestCase.test_valid_code ________________
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = StrictRedis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>>
- args = ('SETEX', 'token_WyJHb0NMUUcxd244SEtfTW9yYkZIcEh0IiwiMy8wOVgudEtnM2l4Rno3R3d0M1B3T2tpMDlDUC9rWlYzQ3dmSFBvYlBTTXJlZUI4T...x00rand_idq\x01J\x81\xd36}X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- options = {}, pool = ConnectionPool<Connection<host=localhost,port=6379,db=0>>
- command_name = 'SETEX', connection = Connection<host=localhost,port=6379,db=0>
- def execute_command(self, *args, **options):
- "Execute a command and return a parsed response"
- pool = self.connection_pool
- command_name = args[0]
- connection = pool.get_connection(command_name, **options)
- try:
- > connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/client.py:667:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- args = ('SETEX', 'token_WyJHb0NMUUcxd244SEtfTW9yYkZIcEh0IiwiMy8wOVgudEtnM2l4Rno3R3d0M1B3T2tpMDlDUC9rWlYzQ3dmSFBvYlBTTXJlZUI4T...x00rand_idq\x01J\x81\xd36}X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- def send_command(self, *args):
- "Pack and send a command to the Redis server"
- > self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- command = [b'*4\r\n$5\r\nSETEX\r\n$158\r\ntoken_WyJHb0NMUUcxd244SEtfTW9yYkZIcEh0IiwiMy8wOVgudEtnM2l4Rno3R3d0M1B3T2tpMDlDUC9rWlYz...and_idq\x01J\x81\xd36}X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.\r\n']
- def send_packed_command(self, command):
- "Send an already packed command to the Redis server"
- if not self._sock:
- > self.connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- During handling of the above exception, another exception occurred:
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = <tests.test_chatbot.ChatbootGoogleCallbackTestCase testMethod=test_valid_code>
- mock_authorized_response = <MagicMock name='authorized_response' id='140158917826152'>
- mock_get = <MagicMock name='get' id='140158917686664'>
- @patch("auth.oauth.providers.google.get")
- @patch("auth.oauth.providers.google.authorized_response")
- def test_valid_code(self, mock_authorized_response, mock_get):
- # token returned from google api
- mock_authorized_response.return_value = {
- "expires_in": 3600,
- "id_token": ("eyJhbGciOiJSUzI1NiIsImtpZCI6IjRiMTRiZWFkODZmZjBhZDRlZTAxZWFkYWUwNzBk" "YjM3YWE2YzY2Y2QifQ."),
- "token_type": "Bearer",
- "access_token": ("ya29.Ci9IA92ZqnIAgf3BUqMPkIW8X4NDB9JCu12ZsV5h902nGig5xj5Ix8WVzjy1ht3s2Q"),
- }
- # user info returner from google api
- class UserInfo(object):
- data = {
- "locale": "en",
- "family_name": "Koci",
- "given_name": "Pavel",
- "name": "Pavel Koci",
- "id": "10974864908507278145",
- "email": "pavel.koci@vacuumapps.com",
- "verified_email": True,
- "picture": "https://lh3.googleusercontent.com/-rscbv5M/photo.jpg",
- "hd": "vacuumapps.com",
- }
- mock_get.return_value = UserInfo()
- url = "/v1/chatbot.google.authorized?state={}&" "code=4%2FVq84MGCyFcHuS-1tj7gpm9hbd81NhhW6eAfMN6TSb2o".format(
- "YXBwX2lkOjpodHRwOi8vd3d3Lmtpd2kuY29tOjpodHRwczovL2dyYXBoLmZhY2Vib29rLmNvbTo6bGlua190b2tlbg%3D%3D"
- )
- > response = self.client.get(url)
- tests/test_chatbot.py:99:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:830: in get
- return self.open(*args, **kw)
- /usr/local/lib/python3.6/site-packages/flask/testing.py:127: in open
- follow_redirects=follow_redirects)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:803: in open
- response = self.run_wsgi_app(environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:716: in run_wsgi_app
- rv = run_wsgi_app(self.application, environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:923: in run_wsgi_app
- app_rv = app(environ, start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1997: in __call__
- return self.wsgi_app(environ, start_response)
- auth/middleware.py:57: in __call__
- retval = self.app(environ, custom_start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1985: in wsgi_app
- response = self.handle_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1540: in handle_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1982: in wsgi_app
- response = self.full_dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1614: in full_dispatch_request
- rv = self.handle_user_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1517: in handle_user_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1612: in full_dispatch_request
- rv = self.dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1598: in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- auth/chatbot/views.py:103: in google_authorized
- token, user_id = save_and_log_social_user(response, google)
- auth/oauth/utils.py:98: in save_and_log_social_user
- return create_token(db_user), db_user.user_id
- auth/token/utils.py:84: in create_token
- token_interface.save_token(kvtoken, user, g.app["persist"])
- auth/token/storage.py:88: in save_token
- store.put(token.tid, data, current_app.config["TOKEN_TTL"])
- /usr/local/lib/python3.6/site-packages/simplekv/decorator.py:73: in put
- self._dstore.put(self._map_key(key), *args, **kwargs))
- /usr/local/lib/python3.6/site-packages/simplekv/__init__.py:395: in put
- return self._put(key, data, self._valid_ttl(ttl_secs))
- /usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py:58: in _put
- self.redis.setex(key, ittl, value)
- /usr/local/lib/python3.6/site-packages/redis/client.py:1192: in setex
- return self.execute_command('SETEX', name, time, value)
- /usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py:58: in traced_execute_command
- return func(*args, **kwargs)
- /usr/local/lib/python3.6/site-packages/redis/client.py:673: in execute_command
- connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610: in send_command
- self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585: in send_packed_command
- self.connect()
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:34:39.841110Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mmethod[0m=[35mGET[0m [36mpath[0m=[35m/v1/chatbot.google.authorized[0m [36mrequest_id[0m=[35mbf6a5af76a454f5d89fd013257c65c01[0m
- [2m2019-03-08T18:34:39.860372Z[0m [[32m[1minfo [0m] [1moauth.redirect_url [0m [36mis_invalid[0m=[35mFalse[0m [36mrequest_id[0m=[35mbf6a5af76a454f5d89fd013257c65c01[0m [36murl[0m=[35mhttp://www.kiwi.com[0m
- [2m2019-03-08T18:34:39.861125Z[0m [[32m[1minfo [0m] [1mparse_google_data.start [0m [36mdata[0m=[35m{"email": "pavel.koci@vacuumapps.com", "family_name": "Koci", "given_name": "Pavel", "hd": "vacuumapps.com", "id": "10974864908507278145", "locale": "en", "name": "Pavel Koci", "picture": "https://lh3.googleusercontent.com/-rscbv5M/photo.jpg", "verified_email": true}[0m [36mrequest_id[0m=[35mbf6a5af76a454f5d89fd013257c65c01[0m
- [2m2019-03-08T18:34:39.861518Z[0m [[32m[1minfo [0m] [1mparse_google_data.finish [0m [36mdata[0m=[35m{"email": "pavel.koci@vacuumapps.com", "email_verified": true, "first_name": "Pavel", "last_name": "Koci"}[0m [36mrequest_id[0m=[35mbf6a5af76a454f5d89fd013257c65c01[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:34:38.465677Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35mffd4b194bd7f439da393bb9e36d3743a[0m
- [2m2019-03-08T18:34:38.465991Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35mffd4b194bd7f439da393bb9e36d3743a[0m
- [2m2019-03-08T18:34:38.470890Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35mffd4b194bd7f439da393bb9e36d3743a[0m
- [2m2019-03-08T18:34:38.471174Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35mffd4b194bd7f439da393bb9e36d3743a[0m
- [2m2019-03-08T18:34:38.969415Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:38.973208Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:39.477975Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:39.482077Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:40.488191Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:40.492958Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- _______________ ChatbotFacebookCallbackTestCase.test_valid_code ________________
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = StrictRedis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>>
- args = ('SETEX', 'token_WyJkN2ZLWG1OZGVzY3dnY3RNTnlNQmdfIiwiWVA5RHBOd24yUFNPd2FpRldrLkRET2MwYU84MEx3YUguQ2NHTU5zTGFsTUQxdWd6Z...x00rand_idq\x01J\x076\xdccX\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- options = {}, pool = ConnectionPool<Connection<host=localhost,port=6379,db=0>>
- command_name = 'SETEX', connection = Connection<host=localhost,port=6379,db=0>
- def execute_command(self, *args, **options):
- "Execute a command and return a parsed response"
- pool = self.connection_pool
- command_name = args[0]
- connection = pool.get_connection(command_name, **options)
- try:
- > connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/client.py:667:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- args = ('SETEX', 'token_WyJkN2ZLWG1OZGVzY3dnY3RNTnlNQmdfIiwiWVA5RHBOd24yUFNPd2FpRldrLkRET2MwYU84MEx3YUguQ2NHTU5zTGFsTUQxdWd6Z...x00rand_idq\x01J\x076\xdccX\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- def send_command(self, *args):
- "Pack and send a command to the Redis server"
- > self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- command = [b'*4\r\n$5\r\nSETEX\r\n$158\r\ntoken_WyJkN2ZLWG1OZGVzY3dnY3RNTnlNQmdfIiwiWVA5RHBOd24yUFNPd2FpRldrLkRET2MwYU84MEx3YUgu...and_idq\x01J\x076\xdccX\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.\r\n']
- def send_packed_command(self, command):
- "Send an already packed command to the Redis server"
- if not self._sock:
- > self.connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- During handling of the above exception, another exception occurred:
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = <tests.test_chatbot.ChatbotFacebookCallbackTestCase testMethod=test_valid_code>
- mock_authorized_response = <MagicMock name='authorized_response' id='140158915752848'>
- mock_get = <MagicMock name='get' id='140158917324192'>
- @patch("auth.oauth.providers.facebook.get")
- @patch("auth.oauth.providers.facebook.authorized_response")
- def test_valid_code(self, mock_authorized_response, mock_get):
- # token returned from google api
- mock_authorized_response.return_value = {
- "access_token": (
- "EAAOn6HZCqOwEBAN5W8ngQ7iZB7TyF9WvHT6GLjfeN7Bo8J92JZBG"
- "jFrFskU4UZApmP6EGhnbCZBJnBoI8kHcMR9tjoMATs4isbxcbgg2a"
- "3eu62vZBJyPDrsFKeCB6s4LA1aShnLjSazR8w3EkuST02QVP5tvbw"
- "CvAZD"
- ),
- "expires": "5102404",
- }
- # user info returner from google api
- class UserInfo(object):
- data = {"last_name": "Pelikan", "email": "juraj.pelikan@gmail.com", "first_name": "Juraj"}
- mock_get.return_value = UserInfo()
- url = (
- "/v1/chatbot.facebook.authorized?code=AQA_gYQhqs45SvcCexSvPN"
- "Lced0GQvPYf-lc0X0JCwdDlcgabynOsh78j-iJrS0canjF3q8dN4O81ir"
- "F5OLPagd8mAORKAu_qqcH57Ixz8Gl5BzAWkdLo0wh4cuBRSCtSCWNVCF2"
- "oUC2EDjWgjGsnDyzjBMDCkhn7hbJrbVEkGw4dtpyrAs8vv6a5m6XvJjgV"
- "WgnclfrDTh5s-iMNW3B0QOYpJL6ihpG0MpkemdeMWj3KafJWOGvZk65I9"
- "4Hfeh8vQw_teI2M-_J1HlqXZ0sE6ak_oLx-iiMp-dn2tpUYB5M6Zv-QGy"
- "eA1jKaD-4ht2H30&state={}"
- ).format("YXBwX2lkOjpodHRwOi8vd3d3Lmtpd2kuY29tOjpodHRwczovL2dyYXBoLmZhY2Vib29rLmNvbTo6bGlua190b2tlbg%3D%3D")
- > response = self.client.get(url)
- tests/test_chatbot.py:215:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:830: in get
- return self.open(*args, **kw)
- /usr/local/lib/python3.6/site-packages/flask/testing.py:127: in open
- follow_redirects=follow_redirects)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:803: in open
- response = self.run_wsgi_app(environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:716: in run_wsgi_app
- rv = run_wsgi_app(self.application, environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:923: in run_wsgi_app
- app_rv = app(environ, start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1997: in __call__
- return self.wsgi_app(environ, start_response)
- auth/middleware.py:57: in __call__
- retval = self.app(environ, custom_start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1985: in wsgi_app
- response = self.handle_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1540: in handle_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1982: in wsgi_app
- response = self.full_dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1614: in full_dispatch_request
- rv = self.handle_user_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1517: in handle_user_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1612: in full_dispatch_request
- rv = self.dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1598: in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- auth/chatbot/views.py:72: in facebook_authorized
- token, user_id = save_and_log_social_user(response, facebook)
- auth/oauth/utils.py:98: in save_and_log_social_user
- return create_token(db_user), db_user.user_id
- auth/token/utils.py:84: in create_token
- token_interface.save_token(kvtoken, user, g.app["persist"])
- auth/token/storage.py:88: in save_token
- store.put(token.tid, data, current_app.config["TOKEN_TTL"])
- /usr/local/lib/python3.6/site-packages/simplekv/decorator.py:73: in put
- self._dstore.put(self._map_key(key), *args, **kwargs))
- /usr/local/lib/python3.6/site-packages/simplekv/__init__.py:395: in put
- return self._put(key, data, self._valid_ttl(ttl_secs))
- /usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py:58: in _put
- self.redis.setex(key, ittl, value)
- /usr/local/lib/python3.6/site-packages/redis/client.py:1192: in setex
- return self.execute_command('SETEX', name, time, value)
- /usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py:58: in traced_execute_command
- return func(*args, **kwargs)
- /usr/local/lib/python3.6/site-packages/redis/client.py:673: in execute_command
- connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610: in send_command
- self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585: in send_packed_command
- self.connect()
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:34:48.843926Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mmethod[0m=[35mGET[0m [36mpath[0m=[35m/v1/chatbot.facebook.authorized[0m [36mrequest_id[0m=[35m4f1247780ae844c3bf73a2c95af9174f[0m
- [2m2019-03-08T18:34:48.849552Z[0m [[32m[1minfo [0m] [1moauth.redirect_url [0m [36mis_invalid[0m=[35mFalse[0m [36mrequest_id[0m=[35m4f1247780ae844c3bf73a2c95af9174f[0m [36murl[0m=[35mhttp://www.kiwi.com[0m
- [2m2019-03-08T18:34:48.850800Z[0m [[32m[1minfo [0m] [1mparse_facebook_data.start[0m [36mdata[0m=[35m{"email": "juraj.pelikan@gmail.com", "first_name": "Juraj", "last_name": "Pelikan"}[0m [36mrequest_id[0m=[35m4f1247780ae844c3bf73a2c95af9174f[0m
- [2m2019-03-08T18:34:48.851518Z[0m [[32m[1minfo [0m] [1mparse_facebook_data.finish[0m [36mdata[0m=[35m{"email": "juraj.pelikan@gmail.com", "email_verified": true, "first_name": "Juraj", "last_name": "Pelikan"}[0m [36mrequest_id[0m=[35m4f1247780ae844c3bf73a2c95af9174f[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:34:47.486993Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35mfb1403e044c64b9696b7e9bd4c9b87c5[0m
- [2m2019-03-08T18:34:47.487592Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35mfb1403e044c64b9696b7e9bd4c9b87c5[0m
- [2m2019-03-08T18:34:47.495590Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35mfb1403e044c64b9696b7e9bd4c9b87c5[0m
- [2m2019-03-08T18:34:47.496032Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35mfb1403e044c64b9696b7e9bd4c9b87c5[0m
- [2m2019-03-08T18:34:47.980401Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:47.984477Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:48.502156Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:48.506210Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:49.512016Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:34:49.514355Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ____________________ GoogleCallbackTestCase.test_valid_code ____________________
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = StrictRedis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>>
- args = ('SETEX', 'token_WyJNMmhWZXRpdi1RZnJ0dEtxWlJIYW5lIiwidGQvaGZlL0s4N2J2Z2xCdEI4Vko0ZXdMVjdaVXl6NzlDOC9NcU5iSUE1NnZQbm5uT...rand_idq\x01J\xea\xf3\x9c'X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.")
- options = {}, pool = ConnectionPool<Connection<host=localhost,port=6379,db=0>>
- command_name = 'SETEX', connection = Connection<host=localhost,port=6379,db=0>
- def execute_command(self, *args, **options):
- "Execute a command and return a parsed response"
- pool = self.connection_pool
- command_name = args[0]
- connection = pool.get_connection(command_name, **options)
- try:
- > connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/client.py:667:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- args = ('SETEX', 'token_WyJNMmhWZXRpdi1RZnJ0dEtxWlJIYW5lIiwidGQvaGZlL0s4N2J2Z2xCdEI4Vko0ZXdMVjdaVXl6NzlDOC9NcU5iSUE1NnZQbm5uT...rand_idq\x01J\xea\xf3\x9c'X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.")
- def send_command(self, *args):
- "Pack and send a command to the Redis server"
- > self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- command = [b"*4\r\n$5\r\nSETEX\r\n$157\r\ntoken_WyJNMmhWZXRpdi1RZnJ0dEtxWlJIYW5lIiwidGQvaGZlL0s4N2J2Z2xCdEI4Vko0ZXdMVjdaVXl6NzlD..._idq\x01J\xea\xf3\x9c'X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.\r\n"]
- def send_packed_command(self, command):
- "Send an already packed command to the Redis server"
- if not self._sock:
- > self.connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- During handling of the above exception, another exception occurred:
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = <tests.test_oauth.GoogleCallbackTestCase testMethod=test_valid_code>
- mock_authorized_response = <MagicMock name='authorized_response' id='140158912528168'>
- mock_get = <MagicMock name='get' id='140158911794984'>
- @patch("auth.oauth.providers.google.get")
- @patch("auth.oauth.providers.google.authorized_response")
- def test_valid_code(self, mock_authorized_response, mock_get):
- # token returned from google api
- mock_authorized_response.return_value = {
- "expires_in": 3600,
- "id_token": ("eyJhbGciOiJSUzI1NiIsImtpZCI6IjRiMTRiZWFkODZmZjBhZDRlZTAxZWFkYWUwNzBk" "YjM3YWE2YzY2Y2QifQ."),
- "token_type": "Bearer",
- "access_token": ("ya29.Ci9IA92ZqnIAgf3BUqMPkIW8X4NDB9JCu12ZsV5h902nGig5xj5Ix8WVzjy1ht3s2Q"),
- }
- # user info returner from google api
- class UserInfo(object):
- data = {
- "locale": "en",
- "family_name": "Koci",
- "given_name": "Pavel",
- "name": "Pavel Koci",
- "id": "10974864908507278145",
- "email": "pavel.koci@vacuumapps.com",
- "verified_email": True,
- "picture": "https://lh3.googleusercontent.com/-rscbv5M/photo.jpg",
- "hd": "vacuumapps.com",
- }
- mock_get.return_value = UserInfo()
- url = "/v1/oauth.google.authorized?state={}&" "code=4%2FVq84MGCyFcHuS-1tj7gpm9hbd81NhhW6eAfMN6TSb2o".format(
- self.state
- )
- > response = self.client.get(url)
- tests/test_oauth.py:104:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:830: in get
- return self.open(*args, **kw)
- /usr/local/lib/python3.6/site-packages/flask/testing.py:127: in open
- follow_redirects=follow_redirects)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:803: in open
- response = self.run_wsgi_app(environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:716: in run_wsgi_app
- rv = run_wsgi_app(self.application, environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:923: in run_wsgi_app
- app_rv = app(environ, start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1997: in __call__
- return self.wsgi_app(environ, start_response)
- auth/middleware.py:57: in __call__
- retval = self.app(environ, custom_start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1985: in wsgi_app
- response = self.handle_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1540: in handle_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1982: in wsgi_app
- response = self.full_dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1614: in full_dispatch_request
- rv = self.handle_user_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1517: in handle_user_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1612: in full_dispatch_request
- rv = self.dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1598: in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- auth/oauth/views.py:120: in google_authorized
- token, user_id = save_and_log_social_user(response, google)
- auth/oauth/utils.py:98: in save_and_log_social_user
- return create_token(db_user), db_user.user_id
- auth/token/utils.py:84: in create_token
- token_interface.save_token(kvtoken, user, g.app["persist"])
- auth/token/storage.py:88: in save_token
- store.put(token.tid, data, current_app.config["TOKEN_TTL"])
- /usr/local/lib/python3.6/site-packages/simplekv/decorator.py:73: in put
- self._dstore.put(self._map_key(key), *args, **kwargs))
- /usr/local/lib/python3.6/site-packages/simplekv/__init__.py:395: in put
- return self._put(key, data, self._valid_ttl(ttl_secs))
- /usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py:58: in _put
- self.redis.setex(key, ittl, value)
- /usr/local/lib/python3.6/site-packages/redis/client.py:1192: in setex
- return self.execute_command('SETEX', name, time, value)
- /usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py:58: in traced_execute_command
- return func(*args, **kwargs)
- /usr/local/lib/python3.6/site-packages/redis/client.py:673: in execute_command
- connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610: in send_command
- self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585: in send_packed_command
- self.connect()
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:02.153707Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mmethod[0m=[35mGET[0m [36mpath[0m=[35m/v1/oauth.google.authorized[0m [36mrequest_id[0m=[35m5886a2c88d4847f6b02b0388ee39d7cd[0m
- [2m2019-03-08T18:35:02.159624Z[0m [[32m[1minfo [0m] [1moauth.redirect_url [0m [36mis_invalid[0m=[35mFalse[0m [36mrequest_id[0m=[35m5886a2c88d4847f6b02b0388ee39d7cd[0m [36murl[0m=[35mhttp://localhost/next_uri[0m
- [2m2019-03-08T18:35:02.160562Z[0m [[32m[1minfo [0m] [1mparse_google_data.start [0m [36mdata[0m=[35m{"email": "pavel.koci@vacuumapps.com", "family_name": "Koci", "given_name": "Pavel", "hd": "vacuumapps.com", "id": "10974864908507278145", "locale": "en", "name": "Pavel Koci", "picture": "https://lh3.googleusercontent.com/-rscbv5M/photo.jpg", "verified_email": true}[0m [36mrequest_id[0m=[35m5886a2c88d4847f6b02b0388ee39d7cd[0m
- [2m2019-03-08T18:35:02.161163Z[0m [[32m[1minfo [0m] [1mparse_google_data.finish [0m [36mdata[0m=[35m{"email": "pavel.koci@vacuumapps.com", "email_verified": true, "first_name": "Pavel", "last_name": "Koci"}[0m [36mrequest_id[0m=[35m5886a2c88d4847f6b02b0388ee39d7cd[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:00.827895Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m7e0724c501364ae4be2eac7c3138eb83[0m
- [2m2019-03-08T18:35:00.828253Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m7e0724c501364ae4be2eac7c3138eb83[0m
- [2m2019-03-08T18:35:00.835305Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m7e0724c501364ae4be2eac7c3138eb83[0m
- [2m2019-03-08T18:35:00.835713Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m7e0724c501364ae4be2eac7c3138eb83[0m
- [2m2019-03-08T18:35:00.843494Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:00.847346Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:01.842880Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:01.849290Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:02.853720Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:02.856095Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ___________________ FacebookCallbackTestCase.test_valid_code ___________________
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = StrictRedis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>>
- args = ('SETEX', 'token_WyI0MTczVnlxdlVaYmp1alBod3loc0x3IiwiR1NvMjFESDM4TDg5VnVqNXJPWFBrZVRyNlliQzNtUklLWmtTT0t6VHVTYVN0eEJrO...1\x8a\x05\xd0\xead\x8e\x00X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- options = {}, pool = ConnectionPool<Connection<host=localhost,port=6379,db=0>>
- command_name = 'SETEX', connection = Connection<host=localhost,port=6379,db=0>
- def execute_command(self, *args, **options):
- "Execute a command and return a parsed response"
- pool = self.connection_pool
- command_name = args[0]
- connection = pool.get_connection(command_name, **options)
- try:
- > connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/client.py:667:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- args = ('SETEX', 'token_WyI0MTczVnlxdlVaYmp1alBod3loc0x3IiwiR1NvMjFESDM4TDg5VnVqNXJPWFBrZVRyNlliQzNtUklLWmtTT0t6VHVTYVN0eEJrO...1\x8a\x05\xd0\xead\x8e\x00X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- def send_command(self, *args):
- "Pack and send a command to the Redis server"
- > self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- command = [b'*4\r\n$5\r\nSETEX\r\n$158\r\ntoken_WyI0MTczVnlxdlVaYmp1alBod3loc0x3IiwiR1NvMjFESDM4TDg5VnVqNXJPWFBrZVRyNlliQzNtUklL...a\x05\xd0\xead\x8e\x00X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.\r\n']
- def send_packed_command(self, command):
- "Send an already packed command to the Redis server"
- if not self._sock:
- > self.connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- During handling of the above exception, another exception occurred:
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = <tests.test_oauth.FacebookCallbackTestCase testMethod=test_valid_code>
- mock_authorized_response = <MagicMock name='authorized_response' id='140158912513920'>
- mock_get = <MagicMock name='get' id='140158911227496'>
- @patch("auth.oauth.providers.facebook.get")
- @patch("auth.oauth.providers.facebook.authorized_response")
- def test_valid_code(self, mock_authorized_response, mock_get):
- # token returned from google api
- mock_authorized_response.return_value = {
- "access_token": (
- "EAAOn6HZCqOwEBAN5W8ngQ7iZB7TyF9WvHT6GLjfeN7Bo8J92JZBG"
- "jFrFskU4UZApmP6EGhnbCZBJnBoI8kHcMR9tjoMATs4isbxcbgg2a"
- "3eu62vZBJyPDrsFKeCB6s4LA1aShnLjSazR8w3EkuST02QVP5tvbw"
- "CvAZD"
- ),
- "expires": "5102404",
- }
- # user info returner from google api
- class UserInfo(object):
- data = {"last_name": "Pelikan", "email": "juraj.pelikan@gmail.com", "first_name": "Juraj"}
- mock_get.return_value = UserInfo()
- url = (
- "/v1/oauth.facebook.authorized?code=AQA_gYQhqs45SvcCexSvPN"
- "Lced0GQvPYf-lc0X0JCwdDlcgabynOsh78j-iJrS0canjF3q8dN4O81ir"
- "F5OLPagd8mAORKAu_qqcH57Ixz8Gl5BzAWkdLo0wh4cuBRSCtSCWNVCF2"
- "oUC2EDjWgjGsnDyzjBMDCkhn7hbJrbVEkGw4dtpyrAs8vv6a5m6XvJjgV"
- "WgnclfrDTh5s-iMNW3B0QOYpJL6ihpG0MpkemdeMWj3KafJWOGvZk65I9"
- "4Hfeh8vQw_teI2M-_J1HlqXZ0sE6ak_oLx-iiMp-dn2tpUYB5M6Zv-QGy"
- "eA1jKaD-4ht2H30&state={}"
- ).format(self.state)
- > response = self.client.get(url)
- tests/test_oauth.py:202:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:830: in get
- return self.open(*args, **kw)
- /usr/local/lib/python3.6/site-packages/flask/testing.py:127: in open
- follow_redirects=follow_redirects)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:803: in open
- response = self.run_wsgi_app(environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:716: in run_wsgi_app
- rv = run_wsgi_app(self.application, environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:923: in run_wsgi_app
- app_rv = app(environ, start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1997: in __call__
- return self.wsgi_app(environ, start_response)
- auth/middleware.py:57: in __call__
- retval = self.app(environ, custom_start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1985: in wsgi_app
- response = self.handle_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1540: in handle_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1982: in wsgi_app
- response = self.full_dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1614: in full_dispatch_request
- rv = self.handle_user_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1517: in handle_user_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1612: in full_dispatch_request
- rv = self.dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1598: in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- auth/oauth/views.py:98: in facebook_authorized
- token, user_id = save_and_log_social_user(response, facebook)
- auth/oauth/utils.py:98: in save_and_log_social_user
- return create_token(db_user), db_user.user_id
- auth/token/utils.py:84: in create_token
- token_interface.save_token(kvtoken, user, g.app["persist"])
- auth/token/storage.py:88: in save_token
- store.put(token.tid, data, current_app.config["TOKEN_TTL"])
- /usr/local/lib/python3.6/site-packages/simplekv/decorator.py:73: in put
- self._dstore.put(self._map_key(key), *args, **kwargs))
- /usr/local/lib/python3.6/site-packages/simplekv/__init__.py:395: in put
- return self._put(key, data, self._valid_ttl(ttl_secs))
- /usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py:58: in _put
- self.redis.setex(key, ittl, value)
- /usr/local/lib/python3.6/site-packages/redis/client.py:1192: in setex
- return self.execute_command('SETEX', name, time, value)
- /usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py:58: in traced_execute_command
- return func(*args, **kwargs)
- /usr/local/lib/python3.6/site-packages/redis/client.py:673: in execute_command
- connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610: in send_command
- self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585: in send_packed_command
- self.connect()
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:11.045884Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mmethod[0m=[35mGET[0m [36mpath[0m=[35m/v1/oauth.facebook.authorized[0m [36mrequest_id[0m=[35mb87c080fb13944cbae7a648fa08b47d5[0m
- [2m2019-03-08T18:35:11.051289Z[0m [[32m[1minfo [0m] [1moauth.redirect_url [0m [36mis_invalid[0m=[35mFalse[0m [36mrequest_id[0m=[35mb87c080fb13944cbae7a648fa08b47d5[0m [36murl[0m=[35mhttp://localhost/next_uri[0m
- [2m2019-03-08T18:35:11.052212Z[0m [[32m[1minfo [0m] [1mparse_facebook_data.start[0m [36mdata[0m=[35m{"email": "juraj.pelikan@gmail.com", "first_name": "Juraj", "last_name": "Pelikan"}[0m [36mrequest_id[0m=[35mb87c080fb13944cbae7a648fa08b47d5[0m
- [2m2019-03-08T18:35:11.052809Z[0m [[32m[1minfo [0m] [1mparse_facebook_data.finish[0m [36mdata[0m=[35m{"email": "juraj.pelikan@gmail.com", "email_verified": true, "first_name": "Juraj", "last_name": "Pelikan"}[0m [36mrequest_id[0m=[35mb87c080fb13944cbae7a648fa08b47d5[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:09.634388Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35me15169f2ecd54c919142ae9748f29a91[0m
- [2m2019-03-08T18:35:09.635319Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35me15169f2ecd54c919142ae9748f29a91[0m
- [2m2019-03-08T18:35:09.646463Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:09.648339Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35me15169f2ecd54c919142ae9748f29a91[0m
- [2m2019-03-08T18:35:09.648753Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35me15169f2ecd54c919142ae9748f29a91[0m
- [2m2019-03-08T18:35:09.650310Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:10.658836Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:10.663175Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:11.672951Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:11.677275Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ______________ FacebookMobileConnectTestCase.test_mobile_connect _______________
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = StrictRedis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>>
- args = ('SETEX', 'token_WyItclhCTjFISXpDd05NTU80aUhXMHpwIiwiZUwxdDBsNFZyakNBYXFHaGxOdVhFdTZSTmVsOEs1ZTFZUWtiZzV4eXV5WlNSQlFrd...idq\x01\x8a\x05:Kn\x82\x00X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- options = {}, pool = ConnectionPool<Connection<host=localhost,port=6379,db=0>>
- command_name = 'SETEX', connection = Connection<host=localhost,port=6379,db=0>
- def execute_command(self, *args, **options):
- "Execute a command and return a parsed response"
- pool = self.connection_pool
- command_name = args[0]
- connection = pool.get_connection(command_name, **options)
- try:
- > connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/client.py:667:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- args = ('SETEX', 'token_WyItclhCTjFISXpDd05NTU80aUhXMHpwIiwiZUwxdDBsNFZyakNBYXFHaGxOdVhFdTZSTmVsOEs1ZTFZUWtiZzV4eXV5WlNSQlFrd...idq\x01\x8a\x05:Kn\x82\x00X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- def send_command(self, *args):
- "Pack and send a command to the Redis server"
- > self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- command = [b'*4\r\n$5\r\nSETEX\r\n$158\r\ntoken_WyItclhCTjFISXpDd05NTU80aUhXMHpwIiwiZUwxdDBsNFZyakNBYXFHaGxOdVhFdTZSTmVsOEs1ZTFZ...x01\x8a\x05:Kn\x82\x00X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.\r\n']
- def send_packed_command(self, command):
- "Send an already packed command to the Redis server"
- if not self._sock:
- > self.connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- During handling of the above exception, another exception occurred:
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = <tests.test_oauth.FacebookMobileConnectTestCase testMethod=test_mobile_connect>
- mock_get = <MagicMock name='get' id='140158917827608'>
- mock_verifier = <MagicMock name='verify_access_token' id='140158915753800'>
- @patch("auth.oauth.views.verify_access_token")
- @patch("auth.oauth.providers.facebook.get")
- def test_mobile_connect(self, mock_get, mock_verifier):
- self.assertEqual(User.query.count(), 0)
- class UserInfo(object):
- data = {"last_name": "Pelikan", "email": "juraj.pelikan@gmail.com", "first_name": "Juraj"}
- mock_get.return_value = UserInfo()
- oauth_payload = {
- "access_token": (
- "EAAOn6HZCqOwEBAN5W8ngQ7iZB7TyF9WvHT6GLjfeN7Bo8J92JZBG"
- "jFrFskU4UZApmP6EGhnbCZBJnBoI8kHcMR9tjoMATs4isbxcbgg2a"
- "3eu62vZBJyPDrsFKeCB6s4LA1aShnLjSazR8w3EkuST02QVP5tvbw"
- "CvAZD"
- ),
- "expires": "5102404",
- }
- headers = {"Authorization": "Basic " + b64encode(b"app_id:").decode("utf8")}
- resp = self.client.post(
- "/v1/oauth.facebook.connect",
- data=json.dumps(oauth_payload),
- content_type="application/json",
- > headers=headers,
- )
- tests/test_oauth.py:244:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:840: in post
- return self.open(*args, **kw)
- /usr/local/lib/python3.6/site-packages/flask/testing.py:127: in open
- follow_redirects=follow_redirects)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:803: in open
- response = self.run_wsgi_app(environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:716: in run_wsgi_app
- rv = run_wsgi_app(self.application, environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:923: in run_wsgi_app
- app_rv = app(environ, start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1997: in __call__
- return self.wsgi_app(environ, start_response)
- auth/middleware.py:57: in __call__
- retval = self.app(environ, custom_start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1985: in wsgi_app
- response = self.handle_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1540: in handle_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1982: in wsgi_app
- response = self.full_dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1614: in full_dispatch_request
- rv = self.handle_user_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1517: in handle_user_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1612: in full_dispatch_request
- rv = self.dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1598: in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- ../packages/flask-jsonschemer/flask_jsonschemer.py:71: in decorated
- return fn(*args, **kwargs)
- auth/token/decorators.py:38: in decorated
- return f(*args, **kwargs)
- auth/oauth/views.py:139: in facebook_connect
- token, user_id = save_and_log_social_user(oauth_json, facebook)
- auth/oauth/utils.py:98: in save_and_log_social_user
- return create_token(db_user), db_user.user_id
- auth/token/utils.py:84: in create_token
- token_interface.save_token(kvtoken, user, g.app["persist"])
- auth/token/storage.py:88: in save_token
- store.put(token.tid, data, current_app.config["TOKEN_TTL"])
- /usr/local/lib/python3.6/site-packages/simplekv/decorator.py:73: in put
- self._dstore.put(self._map_key(key), *args, **kwargs))
- /usr/local/lib/python3.6/site-packages/simplekv/__init__.py:395: in put
- return self._put(key, data, self._valid_ttl(ttl_secs))
- /usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py:58: in _put
- self.redis.setex(key, ittl, value)
- /usr/local/lib/python3.6/site-packages/redis/client.py:1192: in setex
- return self.execute_command('SETEX', name, time, value)
- /usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py:58: in traced_execute_command
- return func(*args, **kwargs)
- /usr/local/lib/python3.6/site-packages/redis/client.py:673: in execute_command
- connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610: in send_command
- self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585: in send_packed_command
- self.connect()
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:16.179131Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'access_token': 'EAAOn6HZCqOwEBAN5W8ngQ7iZB7TyF9WvHT6GLjfeN7Bo8J92JZBGjFrFskU4UZApmP6EGhnbCZBJnBoI8kHcMR9tjoMATs4isbxcbgg2a3eu62vZBJyPDrsFKeCB6s4LA1aShnLjSazR8w3EkuST02QVP5tvbwCvAZD', 'expires': '5102404'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/oauth.facebook.connect[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- [2m2019-03-08T18:35:16.185229Z[0m [[32m[1minfo [0m] [1mparse_facebook_data.start[0m [36mdata[0m=[35m{"email": "juraj.pelikan@gmail.com", "first_name": "Juraj", "last_name": "Pelikan"}[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- [2m2019-03-08T18:35:16.185475Z[0m [[32m[1minfo [0m] [1mparse_facebook_data.finish[0m [36mdata[0m=[35m{"email": "juraj.pelikan@gmail.com", "email_verified": true, "first_name": "Juraj", "last_name": "Pelikan"}[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:14.838680Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35me8febf539fb34bde8299bc21a87d5661[0m
- [2m2019-03-08T18:35:14.839244Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35me8febf539fb34bde8299bc21a87d5661[0m
- [2m2019-03-08T18:35:14.846019Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:14.847643Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35me8febf539fb34bde8299bc21a87d5661[0m
- [2m2019-03-08T18:35:14.847980Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35me8febf539fb34bde8299bc21a87d5661[0m
- [2m2019-03-08T18:35:14.849176Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:15.857114Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:15.861186Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:16.869048Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:16.873317Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ________________ GoogleMobileConectTestCase.test_mobile_connect ________________
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = StrictRedis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>>
- args = ('SETEX', 'token_WyJMWTlwTXZRZ2xIdXVaWGFnWE8xTTRlIiwiRzI0NW5SaFd2NHZlY2E1NGJ3cFJxdU10bUx5ZkxYTndEQnEyL1RwbjVQVTQzT25Ma...rand_idq\x01J\x96\x03\xbf9X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- options = {}, pool = ConnectionPool<Connection<host=localhost,port=6379,db=0>>
- command_name = 'SETEX', connection = Connection<host=localhost,port=6379,db=0>
- def execute_command(self, *args, **options):
- "Execute a command and return a parsed response"
- pool = self.connection_pool
- command_name = args[0]
- connection = pool.get_connection(command_name, **options)
- try:
- > connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/client.py:667:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- args = ('SETEX', 'token_WyJMWTlwTXZRZ2xIdXVaWGFnWE8xTTRlIiwiRzI0NW5SaFd2NHZlY2E1NGJ3cFJxdU10bUx5ZkxYTndEQnEyL1RwbjVQVTQzT25Ma...rand_idq\x01J\x96\x03\xbf9X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.')
- def send_command(self, *args):
- "Pack and send a command to the Redis server"
- > self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- command = [b'*4\r\n$5\r\nSETEX\r\n$157\r\ntoken_WyJMWTlwTXZRZ2xIdXVaWGFnWE8xTTRlIiwiRzI0NW5SaFd2NHZlY2E1NGJ3cFJxdU10bUx5ZkxYTndE..._idq\x01J\x96\x03\xbf9X\x06\x00\x00\x00app_idq\x02X\x06\x00\x00\x00app_idq\x03X\x07\x00\x00\x00persistq\x04\x89u.\r\n']
- def send_packed_command(self, command):
- "Send an already packed command to the Redis server"
- if not self._sock:
- > self.connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- During handling of the above exception, another exception occurred:
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- > sock = self._connect()
- /usr/local/lib/python3.6/site-packages/redis/connection.py:484:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- sock.connect(socket_address)
- # set the socket_timeout now that we're connected
- sock.settimeout(self.socket_timeout)
- return sock
- except socket.error as _:
- err = _
- if sock is not None:
- sock.close()
- if err is not None:
- > raise err
- /usr/local/lib/python3.6/site-packages/redis/connection.py:541:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def _connect(self):
- "Create a TCP socket connection"
- # we want to mimic what socket.create_connection does to support
- # ipv4/ipv6, but we want to set options prior to calling
- # socket.connect()
- err = None
- for res in socket.getaddrinfo(self.host, self.port, 0,
- socket.SOCK_STREAM):
- family, socktype, proto, canonname, socket_address = res
- sock = None
- try:
- sock = socket.socket(family, socktype, proto)
- # TCP_NODELAY
- sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
- # TCP_KEEPALIVE
- if self.socket_keepalive:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
- for k, v in iteritems(self.socket_keepalive_options):
- sock.setsockopt(socket.SOL_TCP, k, v)
- # set the socket_connect_timeout before we connect
- sock.settimeout(self.socket_connect_timeout)
- # connect
- > sock.connect(socket_address)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:529:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <gevent._socket3.socket [closed] object, fd=-1, family=10, type=1, proto=6>
- address = ('::1', 6379, 0, 0)
- def connect(self, address):
- if self.timeout == 0.0:
- return _socket.socket.connect(self._sock, address)
- if isinstance(address, tuple):
- r = getaddrinfo(address[0], address[1], self.family)
- address = r[0][-1]
- if self.timeout is not None:
- timer = Timeout.start_new(self.timeout, timeout('timed out'))
- else:
- timer = None
- try:
- while True:
- err = self.getsockopt(SOL_SOCKET, SO_ERROR)
- if err:
- raise error(err, strerror(err))
- result = _socket.socket.connect_ex(self._sock, address)
- if not result or result == EISCONN:
- break
- elif (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows):
- self._wait(self._write_event)
- else:
- > raise error(result, strerror(result))
- E OSError: [Errno 99] Address not available
- /usr/local/lib/python3.6/site-packages/gevent/_socket3.py:307: OSError
- During handling of the above exception, another exception occurred:
- self = <tests.test_oauth.GoogleMobileConectTestCase testMethod=test_mobile_connect>
- mock_get = <MagicMock name='get' id='140158912663680'>
- mock_verifier = <MagicMock name='verify_access_token' id='140158911567576'>
- @patch("auth.oauth.views.verify_access_token")
- @patch("auth.oauth.providers.google.get")
- def test_mobile_connect(self, mock_get, mock_verifier):
- self.assertEqual(User.query.count(), 0)
- class UserInfo(object):
- data = {
- "locale": "en",
- "family_name": "Koci",
- "given_name": "Pavel",
- "name": "Pavel Koci",
- "id": "10974864908507278145",
- "email": "pavel.koci@vacuumapps.com",
- "verified_email": True,
- "picture": "https://lh3.googleusercontent.com/-rscbv5M/photo.jpg",
- "hd": "vacuumapps.com",
- }
- mock_get.return_value = UserInfo()
- oauth_payload = {
- "access_token": (
- "EAAOn6HZCqOwEBAN5W8ngQ7iZB7TyF9WvHT6GLjfeN7Bo8J92JZBG"
- "jFrFskU4UZApmP6EGhnbCZBJnBoI8kHcMR9tjoMATs4isbxcbgg2a"
- "3eu62vZBJyPDrsFKeCB6s4LA1aShnLjSazR8w3EkuST02QVP5tvbw"
- "CvAZD"
- ),
- "expires": "5102404",
- }
- headers = {"Authorization": "Basic " + b64encode(b"app_id:").decode("utf8")}
- resp = self.client.post(
- > "/v1/oauth.google.connect", data=json.dumps(oauth_payload), content_type="application/json", headers=headers
- )
- tests/test_oauth.py:296:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:840: in post
- return self.open(*args, **kw)
- /usr/local/lib/python3.6/site-packages/flask/testing.py:127: in open
- follow_redirects=follow_redirects)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:803: in open
- response = self.run_wsgi_app(environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:716: in run_wsgi_app
- rv = run_wsgi_app(self.application, environ, buffered=buffered)
- /usr/local/lib/python3.6/site-packages/werkzeug/test.py:923: in run_wsgi_app
- app_rv = app(environ, start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1997: in __call__
- return self.wsgi_app(environ, start_response)
- auth/middleware.py:57: in __call__
- retval = self.app(environ, custom_start_response)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1985: in wsgi_app
- response = self.handle_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1540: in handle_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1982: in wsgi_app
- response = self.full_dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1614: in full_dispatch_request
- rv = self.handle_user_exception(e)
- /usr/local/lib/python3.6/site-packages/flask/app.py:1517: in handle_user_exception
- reraise(exc_type, exc_value, tb)
- /usr/local/lib/python3.6/site-packages/flask/_compat.py:33: in reraise
- raise value
- /usr/local/lib/python3.6/site-packages/flask/app.py:1612: in full_dispatch_request
- rv = self.dispatch_request()
- /usr/local/lib/python3.6/site-packages/flask/app.py:1598: in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- ../packages/flask-jsonschemer/flask_jsonschemer.py:71: in decorated
- return fn(*args, **kwargs)
- auth/token/decorators.py:38: in decorated
- return f(*args, **kwargs)
- auth/oauth/views.py:158: in google_connect
- token, user_id = save_and_log_social_user(oauth_json, google)
- auth/oauth/utils.py:98: in save_and_log_social_user
- return create_token(db_user), db_user.user_id
- auth/token/utils.py:84: in create_token
- token_interface.save_token(kvtoken, user, g.app["persist"])
- auth/token/storage.py:88: in save_token
- store.put(token.tid, data, current_app.config["TOKEN_TTL"])
- /usr/local/lib/python3.6/site-packages/simplekv/decorator.py:73: in put
- self._dstore.put(self._map_key(key), *args, **kwargs))
- /usr/local/lib/python3.6/site-packages/simplekv/__init__.py:395: in put
- return self._put(key, data, self._valid_ttl(ttl_secs))
- /usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py:58: in _put
- self.redis.setex(key, ittl, value)
- /usr/local/lib/python3.6/site-packages/redis/client.py:1192: in setex
- return self.execute_command('SETEX', name, time, value)
- /usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py:58: in traced_execute_command
- return func(*args, **kwargs)
- /usr/local/lib/python3.6/site-packages/redis/client.py:673: in execute_command
- connection.send_command(*args)
- /usr/local/lib/python3.6/site-packages/redis/connection.py:610: in send_command
- self.send_packed_command(self.pack_command(*args))
- /usr/local/lib/python3.6/site-packages/redis/connection.py:585: in send_packed_command
- self.connect()
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = Connection<host=localhost,port=6379,db=0>
- def connect(self):
- "Connects to the Redis server if not already connected"
- if self._sock:
- return
- try:
- sock = self._connect()
- except socket.timeout:
- raise TimeoutError("Timeout connecting to server")
- except socket.error:
- e = sys.exc_info()[1]
- > raise ConnectionError(self._error_message(e))
- E redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- /usr/local/lib/python3.6/site-packages/redis/connection.py:489: ConnectionError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:19.521475Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'access_token': 'EAAOn6HZCqOwEBAN5W8ngQ7iZB7TyF9WvHT6GLjfeN7Bo8J92JZBGjFrFskU4UZApmP6EGhnbCZBJnBoI8kHcMR9tjoMATs4isbxcbgg2a3eu62vZBJyPDrsFKeCB6s4LA1aShnLjSazR8w3EkuST02QVP5tvbwCvAZD', 'expires': '5102404'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/oauth.google.connect[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:19.525835Z[0m [[32m[1minfo [0m] [1mparse_google_data.start [0m [36mdata[0m=[35m{"email": "pavel.koci@vacuumapps.com", "family_name": "Koci", "given_name": "Pavel", "hd": "vacuumapps.com", "id": "10974864908507278145", "locale": "en", "name": "Pavel Koci", "picture": "https://lh3.googleusercontent.com/-rscbv5M/photo.jpg", "verified_email": true}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:19.526107Z[0m [[32m[1minfo [0m] [1mparse_google_data.finish [0m [36mdata[0m=[35m{"email": "pavel.koci@vacuumapps.com", "email_verified": true, "first_name": "Pavel", "last_name": "Koci"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:17.910314Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- [2m2019-03-08T18:35:17.910610Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- [2m2019-03-08T18:35:17.915812Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- [2m2019-03-08T18:35:17.916069Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0a3f983412584826a21b80e6767a34c1[0m
- [2m2019-03-08T18:35:18.925224Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:18.929408Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:19.936504Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- ________________ AuthTestCase.test_change_password_current_new _________________
- self = <tests.test_user.AuthTestCase testMethod=test_change_password_current_new>
- def test_change_password_current_new(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:322:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:31.059671Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35mc336edd2751541e685cb7f0becb10302[0m
- [2m2019-03-08T18:35:31.530330Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35mc336edd2751541e685cb7f0becb10302[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:31.546485Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35mb7f6f00bf86b45d7b6198bce3d6e31a0[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:29.785536Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:29.786159Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:29.796299Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:29.796880Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:30.804696Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:30.808821Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:31.048624Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic QnFpTnJ4YVl3ZjdzVXl6RV8wcFEyUjo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.054285Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.533394Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.536695Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070131.089336,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070131.089341,
- "user_id": "Hbcru6VH9_ufEtxRuy6rrH"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.538125Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic QnFpTnJ4YVl3ZjdzVXl6RV8wcFEyUjo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.543016Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:35:31.559161Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.560172Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:31.815758Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:31.819487Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ____________ AuthTestCase.test_change_password_current_new_invalid _____________
- self = <tests.test_user.AuthTestCase testMethod=test_change_password_current_new_invalid>
- def test_change_password_current_new_invalid(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:354:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:33.714797Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m86ce73b9e2024015b8e85c26ab467989[0m
- [2m2019-03-08T18:35:34.056431Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35m86ce73b9e2024015b8e85c26ab467989[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:34.061595Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35mc178f1a423334a1890aa8028e0f8c63a[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:32.250067Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:32.250334Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:32.255399Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:32.255667Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:33.261587Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:33.265792Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:33.704274Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic WERzZVNtY01jaXFqM1p0NHJ0YUREdDo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:33.709813Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.057264Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.058184Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070133.745377,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070133.745383,
- "user_id": "PLBpvPLFP9zNNEPbTr4aOR"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.058579Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic WERzZVNtY01jaXFqM1p0NHJ0YUREdDo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.060091Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:35:34.069564Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.070373Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.272550Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:34.276768Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ___________ AuthTestCase.test_change_password_current_new_nonsecure ____________
- self = <tests.test_user.AuthTestCase testMethod=test_change_password_current_new_nonsecure>
- def test_change_password_current_new_nonsecure(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:333:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:36.005602Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35mf5c2793bb69246eeac602297c7058475[0m
- [2m2019-03-08T18:35:36.345488Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35mf5c2793bb69246eeac602297c7058475[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:36.350702Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35mc47d4754a8af452589c8136d4cd74762[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:34.719056Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.719310Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.724328Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:34.724563Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:35.731131Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:35.734917Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:35.998406Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic V281NzMwWmFGYVZVbkxXTE1oQk5hUTo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.001206Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.346332Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.347271Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070136.037593,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070136.037601,
- "user_id": "Go2PIYz3-hTno1v-AAuyqc"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.347667Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic V281NzMwWmFGYVZVbkxXTE1oQk5hUTo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.349168Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:35:36.358665Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.359477Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.742088Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:36.746186Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ___________ AuthTestCase.test_change_password_current_new_only_once ____________
- self = <tests.test_user.AuthTestCase testMethod=test_change_password_current_new_only_once>
- def test_change_password_current_new_only_once(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:342:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:38.270602Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m98d89399813f499da3d377999eab428a[0m
- [2m2019-03-08T18:35:38.603333Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35m98d89399813f499da3d377999eab428a[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:38.608670Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m0ea6f51d6b6547d0846657c1f3b8b799[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:36.983226Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.983483Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.988400Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:36.988637Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:37.991959Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:37.994684Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:38.260118Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic Tm9YMDg4STVmSl8yN3NEb2tHbTNMZTo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.265103Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.604178Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.605174Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070138.294828,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070138.294833,
- "user_id": "Tn06w7K53A9MblnpfWOZVe"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.605578Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic Tm9YMDg4STVmSl8yN3NEb2tHbTNMZTo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.607156Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:35:38.617408Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.618281Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:38.997900Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:38.999294Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ___________________ AuthTestCase.test_change_password_token ____________________
- self = <tests.test_user.AuthTestCase testMethod=test_change_password_token>
- def test_change_password_token(self):
- new_user = self.api.user.save(**self.USER_DATA)
- new_password = "CompletelyNewMadlad24"
- self.api.user.reset_password(login=new_user["login"])
- self.assertTrue(self.mock_req.post.called)
- token = self.mock_req.post.call_args[1]["data"]["token"]
- self.api.user.change_password(new_password=new_password, password_token=token)
- > resp = self.api.user.login(login=self.USER_DATA["login"], password=new_password)
- tests/test_user.py:311:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:35:44.544821Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m35702b2816e84ce08ae764e6207853a1[0m
- [2m2019-03-08T18:35:44.941950Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35m35702b2816e84ce08ae764e6207853a1[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:44.949797Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.resetPassword[0m [36mrequest_id[0m=[35me88f2be0e1c14ed78f06b47c0e7ec12b[0m
- [2m2019-03-08T18:35:44.984494Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m3[0m [36mrequest_id[0m=[35me88f2be0e1c14ed78f06b47c0e7ec12b[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:44.990113Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'new_password': 'CompletelyNewMadlad24', 'password_token': 'InRlc3R1c2VyQGV4YW1wbGUuY29tZXRZX3FST05ORSI.D2RHgA.p0yO3Iwhkizs3tAJ3oo8sC4i9Sc'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.changePassword[0m [36mrequest_id[0m=[35md87d13cbe3c948048d5cc99bef4ecb45[0m
- [2m2019-03-08T18:35:45.394431Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m3[0m [36mrequest_id[0m=[35md87d13cbe3c948048d5cc99bef4ecb45[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:35:45.414014Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'CompletelyNewMadlad24'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m751f24fb02214edcbc6fac83711cdefe[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:35:43.148623Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:43.149190Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:43.157766Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:43.158423Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:43.273990Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:43.278375Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:44.162854Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:44.164002Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:44.539505Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic X2VmeGJlaVBWUFl4LTRCTFRDcEtFYjo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.542631Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.943499Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.945243Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070144.575799,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070144.575805,
- "user_id": "z6G371o4kqqLbNuXvwTKZ3"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.945761Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.resetPassword with headers {'Content-Type': 'application/json', 'Authorization': 'Basic X2VmeGJlaVBWUFl4LTRCTFRDcEtFYjo='} and body {"login": "testuser@example.com"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.947656Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.982828Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mdatadog.dogstatsd[0m] [36mmessage[0m=[35mError submitting packet, dropping the packet and closing the socket[0m [36mrequest_id[0m=[35me88f2be0e1c14ed78f06b47c0e7ec12b[0m
- [2m2019-03-08T18:35:44.985353Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.resetPassword HTTP/1.1" 200 3[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.986416Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={}
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.986839Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.changePassword with headers {'Content-Type': 'application/json', 'Authorization': 'Basic X2VmeGJlaVBWUFl4LTRCTFRDcEtFYjo='} and body {"new_password": "CompletelyNewMadlad24", "password_token": "InRlc3R1c2VyQGV4YW1wbGUuY29tZXRZX3FST05ORSI.D2RHgA.p0yO3Iwhkizs3tAJ3oo8sC4i9Sc"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:44.988510Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:45.312692Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:45.314890Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:35:45.391633Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mdatadog.dogstatsd[0m] [36mmessage[0m=[35mError submitting packet, dropping the packet and closing the socket[0m [36mrequest_id[0m=[35md87d13cbe3c948048d5cc99bef4ecb45[0m
- [2m2019-03-08T18:35:45.396877Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.changePassword HTTP/1.1" 200 3[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:45.399712Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={}
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:45.400941Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic X2VmeGJlaVBWUFl4LTRCTFRDcEtFYjo='} and body {"login": "testuser@example.com", "password": "CompletelyNewMadlad24"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:45.407978Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:35:45.443228Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:35:45.446687Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- _______________________ AuthTestCase.test_get_user_empty _______________________
- self = <tests.test_user.AuthTestCase testMethod=test_get_user_empty>
- def test_get_user_empty(self):
- new_user = self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:237:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:08.308128Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35me370fe126c244ac3a51b2942bb81d600[0m
- [2m2019-03-08T18:36:08.730815Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35me370fe126c244ac3a51b2942bb81d600[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:36:08.746429Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m3d233df2e44c4f8eb3c60477a40a39a4[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:06.993534Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:06.993792Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:06.998938Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:06.999175Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.008738Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:08.013243Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:08.297176Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic TFhINl9ZR0ZwVHY0a290NW9RWFVKazo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.302783Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.733785Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.737092Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070168.337621,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070168.337627,
- "user_id": "sofkfqMSycUP4FlPoOXqBP"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.738508Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic TFhINl9ZR0ZwVHY0a290NW9RWFVKazo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.743111Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:08.758243Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:08.759174Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:09.020673Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:09.024774Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- _______________________ AuthTestCase.test_get_user_self ________________________
- self = <tests.test_user.AuthTestCase testMethod=test_get_user_self>
- def test_get_user_self(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:229:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:13.225202Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m53a825b4d5c74956910b2f5fb897a2de[0m
- [2m2019-03-08T18:36:13.588590Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m445[0m [36mrequest_id[0m=[35m53a825b4d5c74956910b2f5fb897a2de[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:36:13.594291Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m2773da0578234fac8fdeab9e5cbca5e7[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:11.788419Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:11.789324Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:11.804298Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:11.804782Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:12.808118Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:12.809848Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:13.213224Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic SFg5V0Y3MFNZdUllNThBeGEzNG40Vzo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.219296Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.589528Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 445[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.590566Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070173.25418,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070173.254186,
- "user_id": "a0XrmpDWBCaqpzUoMopiUn"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.591011Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic SFg5V0Y3MFNZdUllNThBeGEzNG40Vzo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.592686Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:13.603591Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.604520Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:13.816708Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:13.821561Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- __________________ AuthTestCase.test_login_user_invalid_login __________________
- self = <tests.test_user.AuthTestCase testMethod=test_login_user_invalid_login>
- def test_login_user_invalid_login(self):
- with self.assertRaises(userapp.UserAppServiceException):
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:193:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:24.263855Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m07fa52b9e8bc4c96949a272f8fc3259b[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:22.954629Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:22.955552Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:22.967355Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:22.967790Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:23.974885Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:23.976257Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:24.254269Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic SEtRbDdWbWhyMmhQLUhUSndUTndISDo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:24.259873Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:24.286959Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:24.287983Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- _______________ AuthTestCase.test_login_user_login_not_verified ________________
- self = <tests.test_user.AuthTestCase testMethod=test_login_user_login_not_verified>
- def test_login_user_login_not_verified(self):
- data = self.USER_DATA.copy()
- data["email_verified"] = False
- self.api.user.save(**data)
- with self.assertRaises(userapp.UserAppServiceException):
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:189:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:26.198337Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': False, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m0a9c6fd7a2f349769f3abb0d6ee522e4[0m
- [2m2019-03-08T18:36:26.860864Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m640[0m [36mrequest_id[0m=[35m0a9c6fd7a2f349769f3abb0d6ee522e4[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:36:26.870075Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m30b4272c1b0a456991549bfda0b29809[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:24.912703Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:24.912963Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:24.918036Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:24.918273Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:24.983199Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:24.987977Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:25.922842Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:25.924719Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:26.187486Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic UnVNckdhZlAzY0Nwa0dkaHpCcTdCYjo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": false, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.193008Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.847612Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mdatadog.dogstatsd[0m] [36mmessage[0m=[35mError submitting packet, dropping the packet and closing the socket[0m [36mrequest_id[0m=[35m0a9c6fd7a2f349769f3abb0d6ee522e4[0m
- [2m2019-03-08T18:36:26.862578Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 640[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.864288Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070186.227032,
- "email": "testuser@example.com",
- "email_verified": false,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [
- {
- "created_at": 1552070186.519237,
- "issued_by_user_id": "RuMrGafP3cCpkGdhzBq7Bb",
- "reason": "Email requires verification.",
- "type": "EMAIL_NOT_VERIFIED"
- }
- ],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070186.227037,
- "user_id": "SnUzWycYFuqlWBPvOtzCkD"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.865055Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic UnVNckdhZlAzY0Nwa0dkaHpCcTdCYjo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.867958Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:26.880916Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.881915Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:26.932048Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:26.936723Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- _________________ AuthTestCase.test_login_user_login_passsword _________________
- self = <tests.test_user.AuthTestCase testMethod=test_login_user_login_passsword>
- def test_login_user_login_passsword(self):
- self.api.user.save(**self.USER_DATA)
- > resp = self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:176:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:29.026129Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35mae8075b741014f7586b8a92a01ca5343[0m
- [2m2019-03-08T18:36:29.469932Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35mae8075b741014f7586b8a92a01ca5343[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:36:29.495653Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35mdd65e343ebb445c6bbdf7bb62987237b[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:27.563205Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:27.563464Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:27.570534Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:27.570798Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:27.943306Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:28.580730Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:28.585193Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:29.021559Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic T3U5NzJ0bzVIUDRQbTE4c0VZUEt1UTo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.023650Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.473260Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.478078Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070189.050981,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070189.050989,
- "user_id": "wW1figPNE3siPYz9avjWw_"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.479908Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic T3U5NzJ0bzVIUDRQbTE4c0VZUEt1UTo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.488181Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:29.542618Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.545328Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:29.589971Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:29.592174Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ______________ AuthTestCase.test_login_user_login_upper_passsword ______________
- self = <tests.test_user.AuthTestCase testMethod=test_login_user_login_upper_passsword>
- def test_login_user_login_upper_passsword(self):
- self.api.user.save(**self.USER_DATA)
- > resp = self.api.user.login(login=self.USER_DATA["login"].upper(), password=self.USER_DATA["password"])
- tests/test_user.py:181:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:31.554304Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m7262b4712e064b9daea06990d927c503[0m
- [2m2019-03-08T18:36:31.889477Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35m7262b4712e064b9daea06990d927c503[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:36:31.894780Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'TESTUSER@EXAMPLE.COM', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35me2846785fe464d9cbcfc94acb3add907[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:30.220239Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:30.220589Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:30.226918Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:30.227196Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:30.598113Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:31.230359Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:31.232207Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:31.546606Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic YkJFNVc3VkRCYXpocGNsWi1ZQWl2WDo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:31.551480Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:31.890333Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:31.891270Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070191.578137,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070191.578144,
- "user_id": "vQ8ZghKf39qkguKMxSh10p"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:31.891671Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic YkJFNVc3VkRCYXpocGNsWi1ZQWl2WDo='} and body {"login": "TESTUSER@EXAMPLE.COM", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:31.893286Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:31.902663Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:31.903494Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:32.239045Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:32.243158Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ________________ AuthTestCase.test_login_user_too_many_invalids ________________
- self = <tests.test_user.AuthTestCase testMethod=test_login_user_too_many_invalids>
- def test_login_user_too_many_invalids(self):
- self.app.config["INVALID_LOGIN_ATTEMPTS"] = 2
- with self.assertRaises(userapp.UserAppServiceException):
- > self.api.user.login(login="testuser2@example.com", password=self.USER_DATA["password"])
- tests/test_user.py:202:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:33.876314Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser2@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35ma4ccec4715164d008ba5369a3edf85fa[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:32.553276Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:32.553532Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:32.558520Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:32.558760Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:33.565693Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:33.569834Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:33.865413Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic U1dWWXVyVU9fUkFhZUpVZ3JKeldOUjo='} and body {"login": "testuser2@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:33.871389Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:33.897165Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:33.898532Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- ________________________ AuthTestCase.test_logout_user _________________________
- self = <tests.test_user.AuthTestCase testMethod=test_logout_user>
- def test_logout_user(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:219:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:36:35.934802Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35m6f37cec1e96645a7bb2de22abf91b3f5[0m
- [2m2019-03-08T18:36:36.303560Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35m6f37cec1e96645a7bb2de22abf91b3f5[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:36:36.311405Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35mee1e2fe5ad0c4519bc8e54b2dae8334b[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:36:34.648640Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:34.648914Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:34.654580Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:34.655944Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:34.656308Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:34.657212Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:35.658979Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:35.660166Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:35.929879Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic OXRWUUp4UGxKUDBWMzlHM0FBblgxMzo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:35.932503Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:36.304955Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:36.306509Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070195.953555,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070195.953562,
- "user_id": "3QaPEJk5cq33s2xSw_NWv9"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:36.307192Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic OXRWUUp4UGxKUDBWMzlHM0FBblgxMzo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:36.309655Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:36:36.322026Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:36.322963Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:36:36.663280Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:36:36.665146Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ______________________ AuthTestCase.test_token_heartbeat _______________________
- self = <tests.test_user.AuthTestCase testMethod=test_token_heartbeat>
- def test_token_heartbeat(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:259:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:37:12.398288Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35mbd2ef07aeb194027ba8ef37444c60da7[0m
- [2m2019-03-08T18:37:12.745623Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35mbd2ef07aeb194027ba8ef37444c60da7[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:37:12.750973Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m15f3dcaa96f648198bd25eda9a4de099[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:37:11.103814Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:11.104222Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:11.111195Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:11.111620Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:11.305904Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:11.310322Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:12.118907Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:12.123113Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:12.391089Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic QmRiZnZ3RVNOUXhRa1h3VENLc2NoTDo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:12.394755Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:12.746474Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:12.747418Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070232.432534,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070232.432541,
- "user_id": "BFRSWEgCVHaVP0VSYaUvPI"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:12.747842Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic QmRiZnZ3RVNOUXhRa1h3VENLc2NoTDo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:12.749387Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:37:12.759987Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:12.760919Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:13.130625Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:13.134840Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ___________________ AuthTestCase.test_update_user_save_self ____________________
- self = <tests.test_user.AuthTestCase testMethod=test_update_user_save_self>
- def test_update_user_save_self(self):
- new_user = self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:142:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:37:18.959281Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35ma661fdb9f11e4a5d98a145c6bb14f15c[0m
- [2m2019-03-08T18:37:19.329540Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35ma661fdb9f11e4a5d98a145c6bb14f15c[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:37:19.336946Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35m65284e66ff94418ab4b4cf8aa74a3105[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:37:17.492407Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:17.492980Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:17.502698Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:17.503140Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:18.510222Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:18.516201Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:18.954956Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic R2ExUF81QkdsR2NUb295R3pmQzVpNDo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:18.956886Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.330748Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.332115Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070238.986574,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070238.986585,
- "user_id": "zODKmx84KA9odjGfNRz72W"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.332694Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic R2ExUF81QkdsR2NUb295R3pmQzVpNDo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.334867Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:37:19.348209Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.349186Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.522988Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:19.527102Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- __________ AuthTestCase.test_update_user_save_self_cant_change_passwd __________
- self = <tests.test_user.AuthTestCase testMethod=test_update_user_save_self_cant_change_passwd>
- def test_update_user_save_self_cant_change_passwd(self):
- self.api.user.save(**self.USER_DATA)
- > self.api.user.login(login=self.USER_DATA["login"], password=self.USER_DATA["password"])
- tests/test_user.py:149:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- ../packages/userapp/userapp/__init__.py:325: in __call__
- return self._client.call(self._version, self._parent._service_name, self._method_name, kwargs)
- ../packages/userapp/userapp/__init__.py:245: in call
- result = DictionaryUtility.to_object(response.json())
- /usr/local/lib/python3.6/site-packages/requests/models.py:892: in json
- return complexjson.loads(self.text, **kwargs)
- /usr/local/lib/python3.6/site-packages/simplejson/__init__.py:518: in loads
- return _default_decoder.decode(s)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:370: in decode
- obj, end = self.raw_decode(s)
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- self = <simplejson.decoder.JSONDecoder object at 0x7f794e0da0b8>
- s = 'A server error occurred. Please contact the administrator.', idx = 0
- _w = <built-in method match of _sre.SRE_Pattern object at 0x7f79550f4e70>
- _PY3 = True
- def raw_decode(self, s, idx=0, _w=WHITESPACE.match, _PY3=PY3):
- """Decode a JSON document from ``s`` (a ``str`` or ``unicode``
- beginning with a JSON document) and return a 2-tuple of the Python
- representation and the index in ``s`` where the document ended.
- Optionally, ``idx`` can be used to specify an offset in ``s`` where
- the JSON document begins.
- This can be used to decode a JSON document from a string that may
- have extraneous data at the end.
- """
- if idx < 0:
- # Ensure that raw_decode bails on negative indexes, the regex
- # would otherwise mask this behavior. #98
- raise JSONDecodeError('Expecting value', s, idx)
- if _PY3 and not isinstance(s, text_type):
- raise TypeError("Input string must be text, not bytes")
- # strip UTF-8 bom
- if len(s) > idx:
- ord0 = ord(s[idx])
- if ord0 == 0xfeff:
- idx += 1
- elif ord0 == 0xef and s[idx:idx + 3] == '\xef\xbb\xbf':
- idx += 3
- > return self.scan_once(s, idx=_w(s, idx).end())
- E simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
- /usr/local/lib/python3.6/site-packages/simplejson/decoder.py:400: JSONDecodeError
- ----------------------------- Captured stdout call -----------------------------
- [2m2019-03-08T18:37:21.390562Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'first_name': 'Test', 'last_name': 'Testovac', 'email_verified': True, 'login': 'testuser@example.com', 'password': 'MadladPwd42', 'properties': {'currency': {'value': 'usd'}, 'language': {'value': 'en'}}}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.save[0m [36mrequest_id[0m=[35maa0e3b43bdc84b46aad4e2bc68079773[0m
- [2m2019-03-08T18:37:21.711020Z[0m [[32m[1minfo [0m] [1mresponse [0m [36mlength[0m=[35m446[0m [36mrequest_id[0m=[35maa0e3b43bdc84b46aad4e2bc68079773[0m [36mstatus[0m=[35m200[0m
- [2m2019-03-08T18:37:21.716220Z[0m [[32m[1minfo [0m] [1mrequest [0m [36mclient_addr[0m=[35m127.0.0.1[0m [36mforwarding[0m=[35m[0m [36mjson[0m=[35m{'login': 'testuser@example.com', 'password': 'MadladPwd42'}[0m [36mmethod[0m=[35mPOST[0m [36mpath[0m=[35m/v1/user.login[0m [36mrequest_id[0m=[35mc9854fc8b8f341458593210e2da3d350[0m
- ----------------------------- Captured stderr call -----------------------------
- [2m2019-03-08T18:37:19.995923Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.encoding[0m] [36mmessage[0m=[35musing Msgpack encoder[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:19.996194Z[0m [[32m[1minfo [0m] [1mstdlib_log [0m [[34m[1mddtrace.sampler[0m] [36mmessage[0m=[35minitialized RateSampler, sample 100.0% of traces[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:20.001622Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mresetting queues. pids(old:None new:68)[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:20.001865Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mstarting flush thread[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.009975Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:21.014780Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:21.386198Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.save with headers {'Content-Type': 'application/json', 'Authorization': 'Basic T0JhTXRIU3E1WHJLMjR6RUphcVl3Rjo='} and body {"first_name": "Test", "last_name": "Testovac", "email_verified": true, "login": "testuser@example.com", "password": "MadladPwd42", "properties": {"currency": {"value": "usd"}, "language": {"value": "en"}}}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.388254Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.711891Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.save HTTP/1.1" 200 446[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.712831Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response={
- "brand": "kiwicom",
- "created_at": 1552070241.410248,
- "email": "testuser@example.com",
- "email_verified": true,
- "first_name": "Test",
- "last_login_at": null,
- "last_name": "Testovac",
- "locks": [],
- "login": "testuser@example.com",
- "properties": {
- "currency": {
- "value": "usd"
- },
- "language": {
- "value": "en"
- }
- },
- "updated_at": 1552070241.410256,
- "user_id": "Fv-xm_8RzVEy57l7KFcock"
- }
- [0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.713228Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mCalling post http://localhost:8080/v1/user.login with headers {'Content-Type': 'application/json', 'Authorization': 'Basic T0JhTXRIU3E1WHJLMjR6RUphcVl3Rjo='} and body {"login": "testuser@example.com", "password": "MadladPwd42"}[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.714718Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mStarting new HTTP connection (1): localhost[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 484, in connect
- sock = self._connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 541, in _connect
- raise err
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 529, in _connect
- sock.connect(socket_address)
- File "/usr/local/lib/python3.6/site-packages/gevent/_socket3.py", line 307, in connect
- raise error(result, strerror(result))
- OSError: [Errno 99] Address not available
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/usr/local/lib/python3.6/wsgiref/handlers.py", line 137, in run
- self.result = application(self.environ, self.start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
- return self.wsgi_app(environ, start_response)
- File "/usr/src/app/auth/middleware.py", line 57, in __call__
- retval = self.app(environ, custom_start_response)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
- response = self.handle_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
- response = self.full_dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
- rv = self.handle_user_exception(e)
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
- reraise(exc_type, exc_value, tb)
- File "/usr/local/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
- raise value
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
- rv = self.dispatch_request()
- File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
- return self.view_functions[rule.endpoint](**req.view_args)
- File "/usr/src/packages/flask-jsonschemer/flask_jsonschemer.py", line 71, in decorated
- return fn(*args, **kwargs)
- File "/usr/src/app/auth/token/decorators.py", line 38, in decorated
- return f(*args, **kwargs)
- File "/usr/src/app/auth/views.py", line 139, in login
- check_block(user_json["login"])
- File "/usr/src/app/auth/utils.py", line 26, in check_block
- if int(kvstore.get(key)) >= current_app.config["INVALID_LOGIN_ATTEMPTS"]:
- File "/usr/local/lib/python3.6/site-packages/simplekv/decorator.py", line 52, in get
- return self._dstore.get(self._map_key(key), *args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/simplekv/__init__.py", line 75, in get
- return self._get(key)
- File "/usr/local/lib/python3.6/site-packages/simplekv/memory/redisstore.py", line 31, in _get
- val = self.redis.get(key)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 976, in get
- return self.execute_command('GET', name)
- File "/usr/local/lib/python3.6/site-packages/ddtrace/contrib/redis/patch.py", line 58, in traced_execute_command
- return func(*args, **kwargs)
- File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 673, in execute_command
- connection.send_command(*args)
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
- self.send_packed_command(self.pack_command(*args))
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 585, in send_packed_command
- self.connect()
- File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 489, in connect
- raise ConnectionError(self._error_message(e))
- redis.exceptions.ConnectionError: Error 99 connecting to localhost:6379. Address not available.
- [2m2019-03-08T18:37:21.724500Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1murllib3.connectionpool[0m] [36mmessage[0m=[35mhttp://localhost:8080 "POST /v1/user.login HTTP/1.1" 500 59[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:21.725408Z[0m [[32m[1mdebug [0m] [1mstdlib_log [0m [[34m[1muserapp[0m] [36mmessage[0m=[35mRecieved response=A server error occurred. Please contact the administrator.[0m [36mrequest_id[0m=[35m0239925bfd9c4558bce0aa5184d8717e[0m
- [2m2019-03-08T18:37:22.018724Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send spans to localhost:8126: [Errno 99] Address not available[0m
- [2m2019-03-08T18:37:22.021142Z[0m [[31m[1merror [0m] [1mstdlib_log [0m [[34m[1mddtrace.writer[0m] [36mmessage[0m=[35mcannot send services to localhost:8126: [Errno 99] Address not available[0m
- ==================== 22 failed, 79 passed in 194.87 seconds ====================
- Stopping pg and redis
- killall: redis-server: no process killed
- killall: postgresql: no process killed
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement