如何从烧瓶的日志记录中删除“- -”?
How to remove the "- -" from flask's logging?
当我 运行 flask 0.9 时,我得到了日志记录:
127.0.0.1 - - [30/Mar/2016 10:08:38] "GET / HTTP/1.1" 200 -
我应该怎么做才能删除127.0.0.1
和[30/Mar/2006 10:08:38]
之间的- -
?
如果我想从日志消息中删除响应代码 200
我应该怎么做?
如有任何建议,我们将不胜感激!
正如@alecxe 所建议的,我列出了我的代码片段相关日志记录:
logging.basicConfig(filename='werkzeug.log', level=logging.INFO)
logger = logging.getLogger('werkzeug')
logger.setLevel(logging.INFO)
您可以子类化 werkzeug.serving.WSGIRequestHandler
以覆盖您不喜欢的行为:
import logging
from flask import Flask
from werkzeug.serving import WSGIRequestHandler, _log
app = Flask(__name__)
@app.route('/hello')
def hello():
return '<html><body><p>Hello, World.</p></body></html>'
class MyRequestHandler(WSGIRequestHandler):
# Just like WSGIRequestHandler, but without "- -"
def log(self, type, message, *args):
_log(type, '%s [%s] %s\n' % (self.address_string(),
self.log_date_time_string(),
message % args))
# Just like WSGIRequestHandler, but without "code"
def log_request(self, code='-', size='-'):
self.log('info', '"%s" %s', self.requestline, size)
if __name__=="__main__":
logging.basicConfig(filename='werkzeug.log', level=logging.INFO)
logger = logging.getLogger('werkzeug')
logger.setLevel(logging.INFO)
app.run(debug=True, request_handler=MyRequestHandler)
生成的日志文件:
INFO:werkzeug: * Running on http://127.0.0.1:5000/
INFO:werkzeug: * Restarting with reloader
INFO:werkzeug:127.0.0.1 [30/Mar/2016 02:28:24] "GET /?foo HTTP/1.1" -
INFO:werkzeug:127.0.0.1 [30/Mar/2016 02:28:28] "GET /hello HTTP/1.1" -
当我 运行 flask 0.9 时,我得到了日志记录:
127.0.0.1 - - [30/Mar/2016 10:08:38] "GET / HTTP/1.1" 200 -
我应该怎么做才能删除
127.0.0.1
和[30/Mar/2006 10:08:38]
之间的- -
?如果我想从日志消息中删除响应代码
200
我应该怎么做?
如有任何建议,我们将不胜感激!
正如@alecxe 所建议的,我列出了我的代码片段相关日志记录:
logging.basicConfig(filename='werkzeug.log', level=logging.INFO)
logger = logging.getLogger('werkzeug')
logger.setLevel(logging.INFO)
您可以子类化 werkzeug.serving.WSGIRequestHandler
以覆盖您不喜欢的行为:
import logging
from flask import Flask
from werkzeug.serving import WSGIRequestHandler, _log
app = Flask(__name__)
@app.route('/hello')
def hello():
return '<html><body><p>Hello, World.</p></body></html>'
class MyRequestHandler(WSGIRequestHandler):
# Just like WSGIRequestHandler, but without "- -"
def log(self, type, message, *args):
_log(type, '%s [%s] %s\n' % (self.address_string(),
self.log_date_time_string(),
message % args))
# Just like WSGIRequestHandler, but without "code"
def log_request(self, code='-', size='-'):
self.log('info', '"%s" %s', self.requestline, size)
if __name__=="__main__":
logging.basicConfig(filename='werkzeug.log', level=logging.INFO)
logger = logging.getLogger('werkzeug')
logger.setLevel(logging.INFO)
app.run(debug=True, request_handler=MyRequestHandler)
生成的日志文件:
INFO:werkzeug: * Running on http://127.0.0.1:5000/
INFO:werkzeug: * Restarting with reloader
INFO:werkzeug:127.0.0.1 [30/Mar/2016 02:28:24] "GET /?foo HTTP/1.1" -
INFO:werkzeug:127.0.0.1 [30/Mar/2016 02:28:28] "GET /hello HTTP/1.1" -