Turn off http request logging unless settings.DEBUG is set. Relates to #983.
This commit is contained in:
parent
86096c3c74
commit
58a771f85c
2 changed files with 19 additions and 7 deletions
|
|
@ -13,7 +13,7 @@ import time
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from twisted.web import server, static
|
from twisted.web import static
|
||||||
from twisted.application import internet, service
|
from twisted.application import internet, service
|
||||||
from twisted.internet import reactor, defer
|
from twisted.internet import reactor, defer
|
||||||
from twisted.internet.task import LoopingCall
|
from twisted.internet.task import LoopingCall
|
||||||
|
|
@ -506,7 +506,7 @@ if WEBSERVER_ENABLED:
|
||||||
# Start a django-compatible webserver.
|
# Start a django-compatible webserver.
|
||||||
|
|
||||||
from twisted.python import threadpool
|
from twisted.python import threadpool
|
||||||
from evennia.server.webserver import DjangoWebRoot, WSGIWebServer
|
from evennia.server.webserver import DjangoWebRoot, WSGIWebServer, NonLoggingSite
|
||||||
|
|
||||||
# start a thread pool and define the root url (/) as a wsgi resource
|
# start a thread pool and define the root url (/) as a wsgi resource
|
||||||
# recognized by Django
|
# recognized by Django
|
||||||
|
|
@ -522,7 +522,7 @@ if WEBSERVER_ENABLED:
|
||||||
# custom overloads
|
# custom overloads
|
||||||
web_root = WEB_PLUGINS_MODULE.at_webserver_root_creation(web_root)
|
web_root = WEB_PLUGINS_MODULE.at_webserver_root_creation(web_root)
|
||||||
|
|
||||||
web_site = server.Site(web_root, logPath=settings.HTTP_LOG_FILE)
|
web_site = NonLoggingSite(web_root, logPath=settings.HTTP_LOG_FILE)
|
||||||
|
|
||||||
for proxyport, serverport in WEBSERVER_PORTS:
|
for proxyport, serverport in WEBSERVER_PORTS:
|
||||||
# create the webserver (we only need the port for this)
|
# create the webserver (we only need the port for this)
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ a great example/aid on how to do this.)
|
||||||
"""
|
"""
|
||||||
import urlparse
|
import urlparse
|
||||||
from urllib import quote as urlquote
|
from urllib import quote as urlquote
|
||||||
from twisted.web import resource, http
|
from twisted.web import resource, http, server
|
||||||
from twisted.internet import reactor
|
from twisted.internet import reactor
|
||||||
from twisted.application import internet
|
from twisted.application import internet
|
||||||
from twisted.web.proxy import ReverseProxyResource
|
from twisted.web.proxy import ReverseProxyResource
|
||||||
|
|
@ -23,8 +23,8 @@ from twisted.web.wsgi import WSGIResource
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.core.handlers.wsgi import WSGIHandler
|
from django.core.handlers.wsgi import WSGIHandler
|
||||||
|
|
||||||
UPSTREAM_IPS = settings.UPSTREAM_IPS
|
_UPSTREAM_IPS = settings.UPSTREAM_IPS
|
||||||
|
_DEBUG = settings.DEBUG
|
||||||
|
|
||||||
#
|
#
|
||||||
# X-Forwarded-For Handler
|
# X-Forwarded-For Handler
|
||||||
|
|
@ -45,7 +45,7 @@ class HTTPChannelWithXForwardedFor(http.HTTPChannel):
|
||||||
req = self.requests[-1]
|
req = self.requests[-1]
|
||||||
client_ip, port = self.transport.client
|
client_ip, port = self.transport.client
|
||||||
proxy_chain = req.getHeader('X-FORWARDED-FOR')
|
proxy_chain = req.getHeader('X-FORWARDED-FOR')
|
||||||
if proxy_chain and client_ip in UPSTREAM_IPS:
|
if proxy_chain and client_ip in _UPSTREAM_IPS:
|
||||||
forwarded = proxy_chain.split(', ', 1)[CLIENT]
|
forwarded = proxy_chain.split(', ', 1)[CLIENT]
|
||||||
self.transport.client = (forwarded, port)
|
self.transport.client = (forwarded, port)
|
||||||
|
|
||||||
|
|
@ -136,6 +136,18 @@ class DjangoWebRoot(resource.Resource):
|
||||||
request.postpath.insert(0, path0)
|
request.postpath.insert(0, path0)
|
||||||
return self.wsgi_resource
|
return self.wsgi_resource
|
||||||
|
|
||||||
|
#
|
||||||
|
# Site with deactivateable logging
|
||||||
|
#
|
||||||
|
|
||||||
|
class NonLoggingSite(server.Site):
|
||||||
|
"""
|
||||||
|
This class will only log http requests if settings.DEBUG is True.
|
||||||
|
"""
|
||||||
|
def log(self, request):
|
||||||
|
"Conditional logging"
|
||||||
|
if _DEBUG:
|
||||||
|
server.Site.log(self, request)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Threaded Webserver
|
# Threaded Webserver
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue