Repository: incubator-juneau Updated Branches: refs/heads/master e4533bfaf -> 42fc6e843
Improve debugging of testcase failures. Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/42fc6e84 Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/42fc6e84 Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/42fc6e84 Branch: refs/heads/master Commit: 42fc6e843aacf42905350723487fc5893868c5be Parents: e4533bf Author: JamesBognar <[email protected]> Authored: Tue Sep 26 10:29:48 2017 -0400 Committer: JamesBognar <[email protected]> Committed: Tue Sep 26 10:29:48 2017 -0400 ---------------------------------------------------------------------- .../juneau/rest/test/TestMicroservice.java | 32 ++++++++++++++++---- .../juneau/rest/test/ThirdPartyProxyTest.java | 2 +- 2 files changed, 27 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/42fc6e84/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/TestMicroservice.java ---------------------------------------------------------------------- diff --git a/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/TestMicroservice.java b/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/TestMicroservice.java index bf400db..6d2f4fd 100644 --- a/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/TestMicroservice.java +++ b/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/TestMicroservice.java @@ -19,6 +19,7 @@ import java.util.*; import javax.net.ssl.*; +import org.apache.http.*; import org.apache.http.client.*; import org.apache.http.conn.ssl.*; import org.apache.http.impl.client.*; @@ -99,6 +100,8 @@ public class TestMicroservice { */ public static RestClientBuilder client() { try { + final RequestLine[] currentRequest = new RequestLine[1]; + final StatusLine[] currentResponse = new StatusLine[1]; return new RestClientBuilder() .rootUrl(microserviceURI) .setRetryHandler( @@ -106,13 +109,23 @@ public class TestMicroservice { @Override public boolean retryRequest(IOException exception, int executionCount, HttpContext context) { System.err.println("*** ERROR ***"); - TestMicroservice.jettyDump(); - microservice.stop(); - System.exit(2); - return (executionCount < 10); + TestMicroservice.jettyDump(currentRequest[0], currentResponse[0]); + return (executionCount < 3); } } ) + .addInterceptorFirst(new org.apache.http.HttpRequestInterceptor() { + @Override + public void process(HttpRequest r, HttpContext c) throws HttpException, IOException { + currentRequest[0] = r.getRequestLine(); + } + }) + .addInterceptorFirst(new org.apache.http.HttpResponseInterceptor() { + @Override + public void process(HttpResponse r, HttpContext c) throws HttpException, IOException { + currentResponse[0] = r.getStatusLine(); + } + }) .noTrace() ; } catch (Exception e) { @@ -150,10 +163,17 @@ public class TestMicroservice { } } - public static void jettyDump() { + private static int dumpCount = 0; + + public static void jettyDump(RequestLine rl, StatusLine sl) { try { String dump = microservice.getServer().dump(); - IOUtils.pipe(dump, new FileWriter(microservice.getConfig().getString("Logging/logDir") + "/jetty-thread-dump.log")); + FileWriter fw = new FileWriter(microservice.getConfig().getString("Logging/logDir") + "/jetty-thread-dump-"+(dumpCount++)+".log"); + fw.append("RequestLine = [" + rl + "]\n"); + fw.append("StatusLine = [" + sl + "]\n"); + IOUtils.pipe(dump, fw); + fw.flush(); + fw.close(); } catch (Exception e) { e.printStackTrace(); } http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/42fc6e84/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/ThirdPartyProxyTest.java ---------------------------------------------------------------------- diff --git a/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/ThirdPartyProxyTest.java b/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/ThirdPartyProxyTest.java index 8915366..f8259c7 100644 --- a/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/ThirdPartyProxyTest.java +++ b/juneau-microservice/juneau-microservice-test/src/test/java/org/apache/juneau/rest/test/ThirdPartyProxyTest.java @@ -82,7 +82,7 @@ public class ThirdPartyProxyTest extends RestTestcase { if (System.currentTimeMillis() - time.get() > 10000) { try { System.err.println("Failed at iteration " + iteration.get()); - TestMicroservice.jettyDump(); + TestMicroservice.jettyDump(null, null); System.exit(2); } catch (Exception e) { e.printStackTrace();
