Exemple #1
0
 def add_node_info(self, cluster, node_info):
     node_name = node_info["name"]
     cluster_node = cluster.node(node_name)
     if cluster_node:
         cluster_node.ip = extract_value(node_info, ["ip"])
         cluster_node.os = {
             "name": extract_value(node_info, ["os", "name"]),
             "version": extract_value(node_info, ["os", "version"])
         }
         cluster_node.jvm = {
             "vendor": extract_value(node_info, ["jvm", "vm_vendor"]),
             "version": extract_value(node_info, ["jvm", "version"])
         }
         cluster_node.cpu = {
             "available_processors":
             extract_value(node_info, ["os", "available_processors"]),
             "allocated_processors":
             extract_value(node_info, ["os", "allocated_processors"],
                           fallback=None),
         }
         if versions.major_version(cluster.distribution_version) == 1:
             cluster_node.memory = {
                 "total_bytes":
                 extract_value(node_info, ["os", "mem", "total_in_bytes"],
                               fallback=None)
             }
Exemple #2
0
 def number_of_nodes(self):
     distribution_version = self._config.opts("mechanic",
                                              "distribution.version",
                                              mandatory=False)
     configure = False
     if versions.is_version_identifier(distribution_version):
         major = versions.major_version(distribution_version)
         if major >= 2:
             configure = True
     else:
         # we're very likely benchmarking from sources which is ES 5+
         configure = True
     return "\nnode.max_local_storage_nodes: %d" % self.car.nodes if configure else ""
Exemple #3
0
 def add_node_stats(self, cluster, cluster_node, stats):
     if cluster_node:
         data_dirs = extract_value(stats, ["fs", "data"], fallback=[])
         for data_dir in data_dirs:
             fs_meta_data = {
                 "mount": data_dir.get("mount", "unknown"),
                 "type": data_dir.get("type", "unknown"),
                 "spins": data_dir.get("spins", "unknown")
             }
             cluster_node.fs.append(fs_meta_data)
         if versions.major_version(cluster.distribution_version) > 1:
             cluster_node.memory = {
                 "total_bytes": extract_value(stats, ["os", "mem", "total_in_bytes"], fallback=None)
             }
Exemple #4
0
    def _es_log_config(self):
        logging_yml_path = "%s/config/logging.yml" % self.binary_path
        log4j2_properties_path = "%s/config/log4j2.properties" % self.binary_path

        if os.path.isfile(logging_yml_path):
            return "logging.yml", logging_yml_path
        elif os.path.isfile(log4j2_properties_path):
            distribution_version = self._config.opts("mechanic",
                                                     "distribution.version",
                                                     mandatory=False)
            if versions.is_version_identifier(distribution_version):
                if versions.major_version(distribution_version) == 5:
                    return "log4j2.properties.5", log4j2_properties_path
            else:
                return "log4j2.properties", log4j2_properties_path
        else:
            raise exceptions.SystemSetupError(
                "Unrecognized Elasticsearch log config file format")
Exemple #5
0
 def test_major_version(self):
     self.assertEqual(5, versions.major_version("5.0.3"))
     self.assertEqual(5, versions.major_version("5.0.3-SNAPSHOT"))
     self.assertEqual(25, versions.major_version("25.0.3"))
Exemple #6
0
 def test_major_version(self):
     assert versions.major_version("7.10.2") == 7
     assert versions.major_version("7.12.1-SNAPSHOT") == 7
     assert versions.major_version("25.0.3") == 25
Exemple #7
0
 def plugin_download_url(self, plugin_name):
     major_version = versions.major_version(self.version)
     version_url_key = "plugin.%s.%s.%s.url" % (plugin_name, self.name,
                                                str(major_version))
     default_url_key = "plugin.%s.%s.url" % (plugin_name, self.name)
     return self._url_for(version_url_key, default_url_key, mandatory=False)
Exemple #8
0
 def download_url(self):
     major_version = versions.major_version(self.version)
     version_url_key = "%s.%s.url" % (self.name, str(major_version))
     default_url_key = "%s.url" % self.name
     return self._url_for(version_url_key, default_url_key)
Exemple #9
0
 def plugin_download_url(self, plugin_name):
     major_version = versions.major_version(self.version)
     version_url_key = "plugin.%s.%s.%s.url" % (plugin_name, self.name, str(major_version))
     default_url_key = "plugin.%s.%s.url" % (plugin_name, self.name)
     return self._url_for(version_url_key, default_url_key, mandatory=False)
Exemple #10
0
 def download_url(self):
     major_version = versions.major_version(self.version)
     version_url_key = "%s.%s.url" % (self.name, str(major_version))
     default_url_key = "%s.url" % self.name
     return self._url_for(version_url_key, default_url_key)
 def test_major_version(self):
     self.assertEqual(5, versions.major_version("5.0.3"))
     self.assertEqual(5, versions.major_version("5.0.3-SNAPSHOT"))
     self.assertEqual(25, versions.major_version("25.0.3"))