From 44d7a4759818ce749144a90fc942cd1b946cafe9 Mon Sep 17 00:00:00 2001 From: "Michael Vorburger.ch" Date: Mon, 2 Feb 2026 02:29:09 -0800 Subject: [PATCH] fix: Replace System .err & .out with correct (JUL) Logging in GenAI AsyncLive. FUTURE_COPYBARA_INTEGRATE_REVIEW=https://github.com/googleapis/java-genai/pull/799 from googleapis:release-please--branches--main 1daac4e2b82c2fb92b86184cfc7fa81fce347e3e PiperOrigin-RevId: 864255590 --- src/main/java/com/google/genai/AsyncLive.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/google/genai/AsyncLive.java b/src/main/java/com/google/genai/AsyncLive.java index 1a7915ae812..1681b39f7e6 100644 --- a/src/main/java/com/google/genai/AsyncLive.java +++ b/src/main/java/com/google/genai/AsyncLive.java @@ -36,6 +36,7 @@ import java.util.Map; import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; +import java.util.logging.Level; import java.util.logging.Logger; import org.java_websocket.client.WebSocketClient; import org.java_websocket.handshake.ServerHandshake; @@ -241,8 +242,7 @@ public void onMessage(ByteBuffer message) { @Override public void onError(Exception ex) { - System.err.println("Error during live session: " + ex.getMessage()); - ex.printStackTrace(); + logger.log(Level.SEVERE, "Error during live session", ex); if (!sessionFuture.isDone()) { sessionFuture.completeExceptionally(ex); } @@ -250,7 +250,10 @@ public void onError(Exception ex) { @Override public void onClose(int code, String reason, boolean remote) { - System.out.println("Live session closed with code: " + code + " and reason: " + reason); + logger.log( + Level.INFO, + "Live session closed with code: {0} and reason: {1}", + new Object[] {code, reason}); if (!sessionFuture.isDone()) { sessionFuture.completeExceptionally( new GenAiIOException("WebSocket closed unexpectedly: " + reason)); @@ -275,8 +278,7 @@ private void handleIncomingMessage(String message) { "Initial message from WebSocket did not contain setupComplete: " + message)); } } catch (RuntimeException e) { - System.err.println("Error deserializing message: " + e.getMessage()); - e.printStackTrace(); + logger.log(Level.SEVERE, "Error deserializing message", e); sessionFuture.completeExceptionally(e); } return; @@ -293,13 +295,12 @@ private void handleIncomingMessage(String message) { JsonSerializable.fromJsonNode(responseNode, LiveServerMessage.class); messageCallback.accept(serverMessage); } catch (RuntimeException e) { - System.err.println("Error deserializing message: " + e.getMessage()); - e.printStackTrace(); + logger.log(Level.SEVERE, "Error deserializing message", e); } } else { - System.err.println( - "Received message from live session but no callback registered! Please call" - + " `AsyncSession.receive()` to register a callback."); + logger.severe( + "Received message from live session, but no callback registered! Please call" + + " `AsyncSession.receive()` to register a callback first."); } } }