]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-4907 - Added naming for search and server within a node.
authorStephane Gamard <stephane.gamard@searchbox.com>
Wed, 6 Aug 2014 13:33:29 +0000 (15:33 +0200)
committerStephane Gamard <stephane.gamard@searchbox.com>
Wed, 6 Aug 2014 13:33:29 +0000 (15:33 +0200)
server/sonar-search/src/main/java/org/sonar/search/SearchServer.java
server/sonar-server/src/main/java/org/sonar/server/search/IndexProperties.java
sonar-application/src/main/java/org/sonar/application/App.java
sonar-application/src/main/java/org/sonar/application/DefaultSettings.java

index de411943c3e775f1f79dd117b175d0586e89dbfc..45112359b5d21a0c919c24735bad933dc1d47ee3 100644 (file)
@@ -39,6 +39,7 @@ import java.util.Set;
 
 public class SearchServer extends MonitoredProcess {
 
+  public static final String SONAR_NODE_NAME = "sonar.node.name";
   public static final String ES_PORT_PROPERTY = "sonar.search.port";
   public static final String ES_CLUSTER_PROPERTY = "sonar.cluster.name";
   public static final String ES_CLUSTER_INET = "sonar.cluster.master";
@@ -133,10 +134,14 @@ public class SearchServer extends MonitoredProcess {
 
     // Set cluster coordinates
     esSettings.put("cluster.name", clusterName);
-    try {
-      esSettings.put("node.name", InetAddress.getLocalHost().getHostName());
-    } catch (Exception e) {
-      esSettings.put("node.name", "sq-" + System.currentTimeMillis());
+    if (props.contains(SONAR_NODE_NAME)) {
+      esSettings.put("node.name", props.of(SONAR_NODE_NAME));
+    } else {
+      try {
+        esSettings.put("node.name", InetAddress.getLocalHost().getHostName());
+      } catch (Exception e) {
+        esSettings.put("node.name", "sq-" + System.currentTimeMillis());
+      }
     }
 
     // Make sure the index settings are up to date.
index 3e55619a06d30eb70781f530703b671c0cbaa4cf..fbaad7a48343e03ad074d10d1c900a72a9469e35 100644 (file)
@@ -32,6 +32,7 @@ public final class IndexProperties {
   public static final String TYPE = "sonar.search.type";
   public static final String HTTP_PORT = "sonar.search.http.port";
   public static final String NODE_PORT = "sonar.search.port";
-  public static final String CLUSTER_NAME = "sonar.search.cluster.name";
+  public static final String CLUSTER_NAME = "sonar.cluster.name";
+  public static final String NODE_NAME = "sonar.node.name";
 
 }
index 66e3b7a1e26c4a975aca31ce98bb0c6500fbf0d3..49c4d30075bcbe4716f92966360f4dae487fd9bc 100644 (file)
@@ -56,6 +56,7 @@ public class App implements ProcessMXBean {
         .addJavaOpts(String.format("-Dsonar.path.logs=%s", installation.logsDir().getAbsolutePath()))
         .setClassName("org.sonar.search.SearchServer")
         .addProperties(installation.props().rawProperties())
+        .addProperty(DefaultSettings.SONAR_NODE_NAME, installation.prop(DefaultSettings.SONAR_NODE_NAME, DefaultSettings.getNonSetNodeName()))
         .addClasspath(installation.starPath("lib/common"))
         .addClasspath(installation.starPath("lib/search"));
       if (elasticsearch.execute()) {
@@ -73,6 +74,7 @@ public class App implements ProcessMXBean {
               .addJavaOpts(String.format("-Dsonar.path.logs=%s", installation.logsDir().getAbsolutePath()))
               .setClassName("org.sonar.server.app.WebServer")
               .addProperties(installation.props().rawProperties())
+              .addProperty(DefaultSettings.SONAR_NODE_NAME, installation.prop(DefaultSettings.SONAR_NODE_NAME, DefaultSettings.getNonSetNodeName()))
               .addClasspath(installation.starPath("extensions/jdbc-driver/mysql"))
               .addClasspath(installation.starPath("extensions/jdbc-driver/mssql"))
               .addClasspath(installation.starPath("extensions/jdbc-driver/oracle"))
index 7e3634c54230bbeb47ee05d30c78620648d324ec..e97619c49926f9adb67e56f73b1e5c44a50a1817 100644 (file)
@@ -28,6 +28,12 @@ class DefaultSettings {
     // only static stuff
   }
 
+  static final String SONAR_NODE_NAME = "sonar.node.name";
+
+  static String getNonSetNodeName() {
+    return "sonar-" + System.currentTimeMillis();
+  }
+
   static final String SONAR_CLUSTER_MASTER = "sonar.cluster.master";
 
   static final String PATH_LOGS_KEY = "sonar.path.logs";