Add timestamps to logs by everywhere

This commit is contained in:
Aldo Cortesi 2015-05-31 17:25:36 +12:00
parent e7c255a3bb
commit af66661212
2 changed files with 9 additions and 3 deletions

View File

@ -1,9 +1,13 @@
import datetime
import netlib.utils
import netlib.tcp
import netlib.http
class Log:
TIMEFMT = '%d-%m-%y %H:%M:%S'
def __init__(self, fp, hex, rfile, wfile):
self.lines = []
self.fp = fp
@ -38,6 +42,9 @@ class Log:
self("Disconnected")
elif exc_type == netlib.http.HttpError:
self("HTTP Error: %s" % exc_value.message)
self.fp.write(
"%s: "%datetime.datetime.now().strftime(self.TIMEFMT)
)
self.fp.write("\n".join(self.lines))
self.fp.write("\n")
self.fp.flush()

View File

@ -106,16 +106,15 @@ class PathodHandler(tcp.BaseHandler):
lr = self.rfile if self.server.logreq else None
lw = self.wfile if self.server.logresp else None
with log.Log(self.logfp, self.server.hexdump, lr, lw) as lg:
while 1:
while True:
try:
frm = websockets.Frame.from_file(self.rfile)
break
except tcp.NetLibTimeout:
pass
print frm.human_readable()
lg(frm.human_readable())
return self.handle_websocket, None
def handle_http_request(self):
"""
Returns a (handler, log) tuple.