Better method for eventlet.wsgi.server logging.
This commit is contained in:
@@ -67,7 +67,7 @@ flags.DEFINE_string('logging_exception_prefix',
|
|||||||
flags.DEFINE_list('default_log_levels',
|
flags.DEFINE_list('default_log_levels',
|
||||||
['amqplib=WARN',
|
['amqplib=WARN',
|
||||||
'sqlalchemy=WARN',
|
'sqlalchemy=WARN',
|
||||||
'audit=INFO'],
|
'eventlet.wsgi.server=WARN'],
|
||||||
'list of logger=LEVEL pairs')
|
'list of logger=LEVEL pairs')
|
||||||
|
|
||||||
flags.DEFINE_bool('use_syslog', False, 'output to syslog')
|
flags.DEFINE_bool('use_syslog', False, 'output to syslog')
|
||||||
|
15
nova/wsgi.py
15
nova/wsgi.py
@@ -37,9 +37,15 @@ import webob.exc
|
|||||||
from nova import log as logging
|
from nova import log as logging
|
||||||
|
|
||||||
|
|
||||||
class NullWsgiLogger(object):
|
class WritableLogger(object):
|
||||||
def write(*args):
|
"""A thin wrapper that responds to `write` and logs."""
|
||||||
pass
|
|
||||||
|
def __init__(self, logger, level=logging.DEBUG):
|
||||||
|
self.logger = logger
|
||||||
|
self.level = level
|
||||||
|
|
||||||
|
def write(self, msg):
|
||||||
|
self.logger.log(self.level, msg)
|
||||||
|
|
||||||
|
|
||||||
class Server(object):
|
class Server(object):
|
||||||
@@ -64,8 +70,9 @@ class Server(object):
|
|||||||
|
|
||||||
def _run(self, application, socket):
|
def _run(self, application, socket):
|
||||||
"""Start a WSGI server in a new green thread."""
|
"""Start a WSGI server in a new green thread."""
|
||||||
|
logger = logging.getLogger('eventlet.wsgi.server')
|
||||||
eventlet.wsgi.server(socket, application, custom_pool=self.pool,
|
eventlet.wsgi.server(socket, application, custom_pool=self.pool,
|
||||||
log=NullWsgiLogger())
|
log=WritableLogger(logger))
|
||||||
|
|
||||||
|
|
||||||
class Application(object):
|
class Application(object):
|
||||||
|
Reference in New Issue
Block a user