diff --git a/extensions-contrib/graphite-emitter/src/main/java/io/druid/emitter/graphite/GraphiteEmitter.java b/extensions-contrib/graphite-emitter/src/main/java/io/druid/emitter/graphite/GraphiteEmitter.java index d8c877aa046a..52e892c0fead 100644 --- a/extensions-contrib/graphite-emitter/src/main/java/io/druid/emitter/graphite/GraphiteEmitter.java +++ b/extensions-contrib/graphite-emitter/src/main/java/io/druid/emitter/graphite/GraphiteEmitter.java @@ -29,6 +29,7 @@ import com.metamx.emitter.service.ServiceMetricEvent; import java.io.IOException; +import java.net.SocketException; import java.util.List; import java.util.concurrent.ExecutionException; import java.util.concurrent.Executors; @@ -139,7 +140,6 @@ private class ConsumerRunnable implements Runnable public void run() { try { - if (!pickledGraphite.isConnected()) { log.info("trying to connect to graphite server"); pickledGraphite.connect(); @@ -168,6 +168,8 @@ public void run() log.error(e, e.getMessage()); if (e instanceof InterruptedException) { Thread.currentThread().interrupt(); + } else if (e instanceof SocketException){ + pickledGraphite.connect(); } } }