Sam*_*tha 8 python logging save simplehttpserver
如何保存控制台的输出
"192.168.1.1 - - [18/Aug/2014 12:05:59]代码404,消息文件未找到"
到文件?
这是代码:
import SimpleHTTPServer
import SocketServer
PORT = 1548
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
print "serving at port", PORT
httpd.serve_forever()
Run Code Online (Sandbox Code Playgroud)
Rob*_*obᵩ 14
BaseHTTPRequestHandler.log_message()
通过写入打印所有日志消息sys.stderr
.你有两个选择:
1)继续使用BaseHTTPRequestHandler.log_message()
,但更改以下值sys.stderr
:
import SimpleHTTPServer
import SocketServer
PORT = 1548
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
print "serving at port", PORT
import sys
buffer = 1
sys.stderr = open('logfile.txt', 'w', buffer)
httpd.serve_forever()
Run Code Online (Sandbox Code Playgroud)
2)创建一个新xxxRequestHandler
类,替换.log_message()
:
import SimpleHTTPServer
import SocketServer
import sys
PORT = 1548
class MyHTTPHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
buffer = 1
log_file = open('logfile.txt', 'w', buffer)
def log_message(self, format, *args):
self.log_file.write("%s - - [%s] %s\n" %
(self.client_address[0],
self.log_date_time_string(),
format%args))
Handler = MyHTTPHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
print "serving at port", PORT
httpd.serve_forever()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
14501 次 |
最近记录: |