Exemple #1
0
    def _post_initial(self, msg):
        os_info = read_os_release()
        _, _, release, _, _ = os.uname()
        python_vs, _ = sys_version.split("\n")
        ecl_v = EclVersion()
        res_v = ResVersion()
        logged_fields = {
            "status":
            "init",
            "python_sys_path":
            list(map(pad_nonexisting, sys.path)),
            "pythonpath":
            list(
                map(pad_nonexisting,
                    os.environ.get("PYTHONPATH", "").split(":"))),
            "res_version":
            res_v.versionString(),
            "ecl_version":
            ecl_v.versionString(),
            "LSB_ID":
            os_info.get("LSB_ID", ""),
            "LSB_VERSION_ID":
            os_info.get("LSB_VERSION_ID", ""),
            "python_version":
            python_vs,
            "kernel_version":
            release,
        }

        job_list = [j.name() for j in msg.jobs]
        logged_fields.update({"jobs": job_list})

        self._post_message(msg.timestamp, extra_fields=logged_fields)
Exemple #2
0
    def __init__(self,
                 module_file="jobs.py",
                 json_file="jobs.json",
                 error_url=None,
                 log_url=None):
        self._job_map = {}
        self.simulation_id = ""
        self.ert_pid = ""
        self._log_url = log_url
        if log_url is None:
            self._log_url = error_url
        self._data_root = None
        if json_file is not None and os.path.isfile(json_file):
            self._loadJson(json_file)
        else:
            self._loadModule(module_file)

        self.start_time = dt.now()
        self.max_runtime = 0  # This option is currently sleeping
        self.short_sleep = 2  # Sleep between status checks
        self.node = socket.gethostname()
        pw_entry = pwd.getpwuid(os.getuid())
        self.user = pw_entry.pw_name
        os_info = _read_os_release()
        _, _, release, _, _ = os.uname()
        python_vs, _ = sys_version.split('\n')
        ecl_v = EclVersion()
        res_v = ResVersion()
        logged_fields = {
            "status":
            "init",
            "python_sys_path":
            map(pad_nonexisting, sys.path),
            "pythonpath":
            map(pad_nonexisting,
                os.environ.get('PYTHONPATH', '').split(':')),
            "res_version":
            res_v.versionString(),
            "ecl_version":
            ecl_v.versionString(),
            "LSB_ID":
            os_info.get('LSB_ID', ''),
            "LSB_VERSION_ID":
            os_info.get('LSB_VERSION_ID', ''),
            "python_version":
            python_vs,
            "kernel_version":
            release,
        }
        logged_fields.update({"jobs": self._job_map.values()})
        self.postMessage(extra_fields=logged_fields)
        cond_unlink("EXIT")
        cond_unlink(self.EXIT_file)
        cond_unlink(self.STATUS_file)
        cond_unlink(self.OK_file)
        self.initStatusFile()
        if self._data_root:
            os.environ["DATA_ROOT"] = self._data_root
        self.information = logged_fields