add simple netlog server for testing logging to Portal

This commit is contained in:
Jude Nelson
2017-04-17 15:39:32 -04:00
parent 9463448831
commit 7e9a2cc736

View File

@@ -0,0 +1,39 @@
#!/usr/bin/python
"""
Simple network logging server to receive
log messages (emulates Portal's functionality)
"""
import os
import sys
import json
import SimpleHTTPServer
logpath = None
class LogRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
def do_POST(self):
length = int(self.headers['content-length'])
msg = self.rfile.read(length)
try:
msg = json.loads(msg)
except:
print "invalid message '{}'".format(msg)
self.send_response(401)
self.end_headers()
return
with open(logpath, 'a') as f:
f.write(json.dumps(msg, sort_keys=True) + "\n")
self.send_response(200)
self.end_headers()
return
if __name__ == "__main__":
logpath = '/tmp/blockstack-netlog-server.log'
srv = SimpleHTTPServer.BaseHTTPServer.HTTPServer(('localhost', 8333), LogRequestHandler)
srv.serve_forever()