diff options
author | 2018-06-26 11:48:21 -0700 | |
---|---|---|
committer | 2018-06-26 11:50:36 -0700 | |
commit | f166d1c5f4f353db6879a75c0b8424cd6c46cecc (patch) | |
tree | f249ed7a53f4b5ff4a614705c1d6067c9f1bea8d /src/test/java/com/google/devtools/build | |
parent | 4a2002043ed3907223a403e8b8fc66975e516fd8 (diff) |
Debug server debug logs: use EventHandler instead of Logger.
Logger messages aren't printed to the console, they're written to /usr/local/google/tmp, and can be prohibitively large for these debug server logs.
Instead I'm going with your original suggestion in https://github.com/bazelbuild/bazel/commit/b74922932b25a71c626b47ea9a9afb7dbc506cec, and selectively suppressing debug events by wrapping the EventHandler on the way in to SkylarkDebugServer.
PiperOrigin-RevId: 202166571
Diffstat (limited to 'src/test/java/com/google/devtools/build')
2 files changed, 19 insertions, 3 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java index 89a0405cd4..2dcdf2543e 100644 --- a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java +++ b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java @@ -16,6 +16,7 @@ package com.google.devtools.build.lib.skylarkdebug.server; import static com.google.common.truth.Truth.assertThat; +import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.events.EventKind; import com.google.devtools.build.lib.events.util.EventCollectionApparatus; import com.google.devtools.build.lib.skylarkdebugging.SkylarkDebuggingProtos.ContinueExecutionResponse; @@ -47,6 +48,17 @@ public class DebugServerTransportTest { private final EventCollectionApparatus events = new EventCollectionApparatus(EventKind.ALL_EVENTS); + /** + * The default fail-fast {@link EventHandler} fails on debug-level events, so we instead use a + * handler suppressing those events. + */ + private final EventHandler eventHandler = + event -> { + if (event.getKind() != EventKind.DEBUG) { + events.reporter().handle(event); + } + }; + /** A simple debug client for testing purposes. */ private static class MockDebugClient { @@ -87,7 +99,8 @@ public class DebugServerTransportTest { ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getByName(null)); Future<DebugServerTransport> future = executor.submit( - () -> DebugServerTransport.createAndWaitForClient(events.reporter(), serverSocket)); + () -> + DebugServerTransport.createAndWaitForClient(eventHandler, serverSocket)); MockDebugClient client = new MockDebugClient(); client.connect(Duration.ofSeconds(10), serverSocket); @@ -109,7 +122,8 @@ public class DebugServerTransportTest { ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getByName(null)); Future<DebugServerTransport> future = executor.submit( - () -> DebugServerTransport.createAndWaitForClient(events.reporter(), serverSocket)); + () -> + DebugServerTransport.createAndWaitForClient(eventHandler, serverSocket)); MockDebugClient client = new MockDebugClient(); client.connect(Duration.ofSeconds(10), serverSocket); diff --git a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java index d5cfe9bc81..5a7c12273c 100644 --- a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java +++ b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java @@ -79,7 +79,9 @@ public class SkylarkDebugServerTest { ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getByName(null)); Future<SkylarkDebugServer> future = executor.submit( - () -> SkylarkDebugServer.createAndWaitForConnection(events.reporter(), serverSocket)); + () -> + SkylarkDebugServer.createAndWaitForConnection( + events.reporter(), serverSocket, false)); client = new MockDebugClient(); client.connect(serverSocket, Duration.ofSeconds(10)); |