Add a request-id to each log line

This commit is contained in:
Mark Haines 2014-10-30 01:21:33 +00:00
parent 51b81b472d
commit b29517bd01
11 changed files with 205 additions and 31 deletions

View file

@ -14,7 +14,7 @@
# limitations under the License.
from ._base import Config
from synapse.util.logcontext import LoggingContextFilter
from twisted.python.log import PythonLoggingObserver
import logging
import logging.config
@ -45,7 +45,8 @@ class LoggingConfig(Config):
def setup_logging(self):
log_format = (
'%(asctime)s - %(name)s - %(lineno)d - %(levelname)s - %(message)s'
"%(asctime)s - %(name)s - %(lineno)d - %(levelname)s - %(request)s"
" - %(message)s"
)
if self.log_config is None:
@ -54,12 +55,20 @@ class LoggingConfig(Config):
level = logging.DEBUG
# FIXME: we need a logging.WARN for a -q quiet option
logger = logging.getLogger('')
logger.setLevel(level)
formatter = logging.Formatter(log_format)
if self.log_file:
handler = logging.FileHandler(self.log_file)
else:
handler = logging.StreamHandler()
print handler
handler.setFormatter(formatter)
logging.basicConfig(
level=level,
filename=self.log_file,
format=log_format
)
handler.addFilter(LoggingContextFilter(request=""))
logger.addHandler(handler)
logger.info("Test")
else:
logging.config.fileConfig(self.log_config)