diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 6cadd8a..456f903 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -43,13 +43,13 @@
-
+
-
+
@@ -80,11 +80,11 @@
-
-
+
+
-
+
@@ -189,7 +189,7 @@
-
+
@@ -229,12 +229,12 @@
1588152877746
-
+
-
+
@@ -245,10 +245,10 @@
-
+
-
+
@@ -363,11 +363,11 @@
-
-
+
+
-
+
diff --git a/serve.py b/serve.py
index 82e03db..2fb75fe 100644
--- a/serve.py
+++ b/serve.py
@@ -151,19 +151,8 @@ lock = Lock()
config = Config()
-def train_models(records):
+def train_models():
lock.acquire()
-
- with open(config.train_data_path, 'w', newline='') as csvfile:
- spamwriter = csv.writer(
- csvfile, delimiter=' ',
- quotechar='|', quoting=csv.QUOTE_MINIMAL
- )
- spamwriter.writerow(["Job", "Time", "GPU", "Pre", "Main", "Post"])
- for record in records:
- print(record)
- spamwriter.writerow(record)
-
np.random.seed(config.random_seed)
data_gainer = Data(config)
@@ -202,10 +191,30 @@ class MyHandler(BaseHTTPRequestHandler):
self.end_headers()
self.wfile.write(bytes(json.dumps(msg), "utf-8"))
+ elif req.path == "/feed":
+ try:
+ job = query.get('job')[0]
+ model = query.get('model')[0]
+ time = query.get('time')[0]
+ pre = query.get('pre')[0]
+ main = query.get('main')[0]
+ post = query.get('post')[0]
+ with open(config.train_data_path, 'a+', newline='') as csvfile:
+ spamwriter = csv.writer(
+ csvfile, delimiter=' ',
+ quotechar='|', quoting=csv.QUOTE_MINIMAL
+ )
+ spamwriter.writerow([job, model, time, pre, main, post])
+ msg = {'code': 1, 'error': "container not exist"}
+ except Exception as e:
+ msg = {'code': 2, 'error': str(e)}
+ self.send_response(200)
+ self.send_header('Content-type', 'application/json')
+ self.end_headers()
+ self.wfile.write(bytes(json.dumps(msg), "utf-8"))
+
elif req.path == "/train":
try:
- data = query.get('data')[0]
- records = json.load(data)
t = Thread(target=train_models, name='train_models', args=(records,))
t.start()
msg = {'code': 1, 'error': "container not exist"}
@@ -254,6 +263,13 @@ if __name__ == '__main__':
server = HTTPServer(('', PORT_NUMBER), MyHandler)
print('Started http server on port ', PORT_NUMBER)
+ with open(config.train_data_path, 'w', newline='') as csvfile:
+ spamwriter = csv.writer(
+ csvfile, delimiter=' ',
+ quotechar='|', quoting=csv.QUOTE_MINIMAL
+ )
+ spamwriter.writerow(["Job", "Model", "Time", "Pre", "Main", "Post"])
+
# Wait forever for incoming http requests
server.serve_forever()