mirror of
https://github.com/alexgo-io/stacks-puppet-node.git
synced 2026-04-09 22:37:47 +08:00
40 lines
963 B
Python
Executable File
40 lines
963 B
Python
Executable File
#!/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()
|
|
|