add timer to logs and add threading back to listeners

This commit is contained in:
William Bell committed 2024-05-30 16:56:06 +01:00
1 parent f52fa27656
commit 5869e462cf
2 files changed
+5 -6

No files matched your search

+1 -1
View File
@@ -3,5 +3,5 @@ import "handleRequest" as handleRequest
let listener(Socket, routes, onErr) = do
while (not Socket.isClosed()) try do
let accept = Socket.accept()
handleRequest.handle(routes, accept, onErr)
thread(()=handleRequest.handle(routes, accept, onErr)).start()
catch (e) if (onErr) onErr(e)
+4 -5
View File
@@ -1,15 +1,14 @@
let logger(req, res) = do
let date = time.now()
let onEnd() = do
let COLOUR = null
let dateAfter = time.now()
let COLOUR = colour.fg.magenta
if (res.code >= 200 && res.code < 300) do
COLOUR = colour.fg.green
else if (res.code >= 300 && res.code < 400) do
COLOUR = colour.fg.yellow
else if (res.code >= 400 && res.code < 500) do
COLOUR = colour.fg.red
else do
COLOUR = colour.fg.magenta
date = time.now().format()
term.log(colour.set(COLOUR, req.RemoteAddr+" - - ["+date+"] "+req.method+" "+req.path+" - "+string(res.code)))
term.log(colour.set(COLOUR, req.RemoteAddr+" - - ["+dateAfter.format()+"] "+req.method+" "+req.path+" - "+string(res.code)+" - "+string(dateAfter.unixMilli()-date.unixMilli()) +"ms"))
req.on.headersSent.append(onEnd)
res.next()