PAL: Get TG IP address from output_info.xml
[csit.git] / resources / tools / presentation / input_data_parser.py
index e330b12..bae7b5e 100644 (file)
@@ -19,9 +19,8 @@
 - filter the data using tags,
 """
 
-import multiprocessing
-import os
 import re
+import resource
 import pandas as pd
 import logging
 
@@ -37,7 +36,6 @@ from json import loads
 from jumpavg.AvgStdevMetadataFactory import AvgStdevMetadataFactory
 
 from input_data_files import download_and_unzip_data_file
-from utils import Worker
 
 
 # Separator used in file names
@@ -389,14 +387,12 @@ class ExecutionChecker(ResultVisitor):
         :returns: Nothing.
         """
 
-        if msg.message.count("Arguments:"):
-            message = str(msg.message).replace(' ', '').replace('\n', '').\
-                replace("'", '"').replace('b"', '"').\
-                replace("honeycom", "honeycomb")
-            message = loads(message[11:-1])
+        if msg.message.count("Setup of TG node"):
+            reg_tg_ip = re.compile(
+                r'Setup of TG node (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}) done')
             try:
-                self._testbed = message["TG"]["host"]
-            except (KeyError, ValueError):
+                self._testbed = str(re.search(reg_tg_ip, msg.message).group(1))
+            except (KeyError, ValueError, IndexError, AttributeError):
                 pass
             finally:
                 self._data["metadata"]["testbed"] = self._testbed
@@ -1262,11 +1258,11 @@ class InputData(object):
                         file_name = self._cfg.input["file-name"]
                         full_name = join(
                             self._cfg.environment["paths"]["DIR[WORKING,DATA]"],
-                            "{job}{sep}{build}{sep}{name}".
-                                format(job=job,
-                                       sep=SEPARATOR,
-                                       build=build["build"],
-                                       name=file_name))
+                            "{job}{sep}{build}{sep}{name}".format(
+                                job=job,
+                                sep=SEPARATOR,
+                                build=build["build"],
+                                name=file_name))
                         try:
                             remove(full_name)
                             logs.append(("INFO",
@@ -1307,12 +1303,8 @@ class InputData(object):
             for build in builds:
 
                 result = self._download_and_parse_build(job, build, repeat)
-
-                job = result["job"]
                 build_nr = result["build"]["build"]
 
-                logging.info("  {job}-{build}".format(job=job,
-                                                      build=build_nr))
                 if result["data"]:
                     data = result["data"]
                     build_data = pd.Series({
@@ -1333,6 +1325,9 @@ class InputData(object):
 
                 self._cfg.set_input_state(job, build_nr, result["state"])
 
+                logging.info("Memory allocation: {0:,d}MB".format(
+                    resource.getrusage(resource.RUSAGE_SELF).ru_maxrss / 1000))
+
         logging.info("Done.")
 
     @staticmethod