Example #1
0
 def __call__(self, environ, start_response):
     ptr_lookup = PtrLookup(environ.get('REMOTE_ADDR', '0.0.0.0'))
     ptr_lookup.start()
     try:
         self._validate_request(environ)
         env = self._get_envelope(environ)
         self._add_envelope_extras(environ, env, ptr_lookup)
         self._enqueue_envelope(env)
     except WsgiResponse as res:
         start_response(res.status, res.headers)
         return res.data
     except Exception as exc:
         logging.log_exception(__name__)
         msg = '{0!s}\n'.format(exc)
         content_length = str(len(msg))
         headers = [('Content-Length', content_length),
                    ('Content-Type', 'text/plain')]
         start_response('500 Internal Server Error', headers)
         return [msg]
     finally:
         ptr_lookup.kill(block=False)
Example #2
0
 def __call__(self, environ, start_response):
     ptr_lookup = PtrLookup(environ.get('REMOTE_ADDR', '0.0.0.0'))
     ptr_lookup.start()
     try:
         self._validate_request(environ)
         env = self._get_envelope(environ)
         self._add_envelope_extras(environ, env, ptr_lookup)
         self._enqueue_envelope(env)
     except WsgiResponse as res:
         start_response(res.status, res.headers)
         return res.data
     except Exception as exc:
         logging.log_exception(__name__)
         msg = '{0!s}\n'.format(exc)
         content_length = str(len(msg))
         headers = [('Content-Length', content_length),
                    ('Content-Type', 'text/plain')]
         start_response('500 Internal Server Error', headers)
         return [msg]
     finally:
         ptr_lookup.kill(block=False)