]> source.dussan.org Git - sonarqube.git/commitdiff
add name to thread used by NotificationService
authorSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Thu, 15 Oct 2015 15:33:17 +0000 (17:33 +0200)
committerSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Fri, 16 Oct 2015 15:11:15 +0000 (17:11 +0200)
threads created by SQ should always be named to easy investigations

server/sonar-server/src/main/java/org/sonar/server/notification/NotificationService.java

index 185a54e54c4ae113d9091850acb7fcd455db301b..66af432960c9e6119820bf0fe93aaa6faa236d42 100644 (file)
@@ -24,6 +24,7 @@ import com.google.common.collect.HashMultimap;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.Multimap;
 import com.google.common.collect.SetMultimap;
+import com.google.common.util.concurrent.ThreadFactoryBuilder;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
@@ -60,6 +61,7 @@ import org.sonar.db.DbClient;
 })
 @ServerSide
 public class NotificationService implements Startable {
+  private static final String THREAD_NAME_PREFIX = "sq-notification-service-";
 
   private static final Logger LOG = Loggers.get(NotificationService.class);
 
@@ -93,7 +95,12 @@ public class NotificationService implements Startable {
 
   @Override
   public void start() {
-    executorService = Executors.newSingleThreadScheduledExecutor();
+    executorService =
+      Executors.newSingleThreadScheduledExecutor(
+        new ThreadFactoryBuilder()
+          .setNameFormat(THREAD_NAME_PREFIX + "%d")
+          .setPriority(Thread.MIN_PRIORITY)
+          .build());
     executorService.scheduleWithFixedDelay(new Runnable() {
       @Override
       public void run() {