From 5a5608893018529dfa5dba66070b26d7b33e9d7b Mon Sep 17 00:00:00 2001 From: Bryan Duxbury Date: Fri, 10 Apr 2009 17:20:51 +0000 Subject: [PATCH] THRIFT-416. java: java.util.logging eats exceptions without warning This patch switches the logging framework to log4j and updates all the server implementations accordingly. git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@763981 13f79535-47bb-0310-9956-ffa450edef68 --- lib/java/build.xml | 2 +- .../thrift/server/TNonblockingServer.java | 32 +++++++++---------- .../apache/thrift/server/TSimpleServer.java | 10 +++--- .../thrift/server/TThreadPoolServer.java | 12 +++---- .../thrift/transport/TIOStreamTransport.java | 8 ++--- .../thrift/transport/TServerSocket.java | 8 ++--- .../org/apache/thrift/transport/TSocket.java | 12 +++---- 7 files changed, 41 insertions(+), 43 deletions(-) diff --git a/lib/java/build.xml b/lib/java/build.xml index 05cf9cd4..6778f2c2 100644 --- a/lib/java/build.xml +++ b/lib/java/build.xml @@ -42,7 +42,7 @@ - + diff --git a/lib/java/src/org/apache/thrift/server/TNonblockingServer.java b/lib/java/src/org/apache/thrift/server/TNonblockingServer.java index a6620ebe..95d81e22 100644 --- a/lib/java/src/org/apache/thrift/server/TNonblockingServer.java +++ b/lib/java/src/org/apache/thrift/server/TNonblockingServer.java @@ -29,8 +29,8 @@ import java.nio.channels.spi.SelectorProvider; import java.util.HashSet; import java.util.Iterator; import java.util.Set; -import java.util.logging.Level; -import java.util.logging.Logger; + +import org.apache.log4j.Logger; import org.apache.thrift.TByteArrayOutputStream; import org.apache.thrift.TException; @@ -199,7 +199,7 @@ public class TNonblockingServer extends TServer { serverTransport_.listen(); return true; } catch (TTransportException ttx) { - LOGGER.log(Level.SEVERE, "Failed to start listening on server socket!", ttx); + LOGGER.error("Failed to start listening on server socket!", ttx); return false; } } @@ -224,7 +224,7 @@ public class TNonblockingServer extends TServer { selectThread_.start(); return true; } catch (IOException e) { - LOGGER.log(Level.SEVERE, "Failed to start selector thread!", e); + LOGGER.error("Failed to start selector thread!", e); return false; } } @@ -356,11 +356,11 @@ public class TNonblockingServer extends TServer { // deal with writes handleWrite(key); } else { - LOGGER.log(Level.WARNING, "Unexpected state in select! " + key.interestOps()); + LOGGER.warn("Unexpected state in select! " + key.interestOps()); } } } catch (IOException e) { - LOGGER.log(Level.WARNING, "Got an IOException while selecting!", e); + LOGGER.warn("Got an IOException while selecting!", e); } } @@ -393,7 +393,7 @@ public class TNonblockingServer extends TServer { clientKey.attach(frameBuffer); } catch (TTransportException tte) { // something went wrong accepting. - LOGGER.log(Level.WARNING, "Exception trying to accept!", tte); + LOGGER.warn("Exception trying to accept!", tte); tte.printStackTrace(); if (clientKey != null) cleanupSelectionkey(clientKey); if (client != null) client.close(); @@ -512,7 +512,7 @@ public class TNonblockingServer extends TServer { // pull out the frame size as an integer. int frameSize = buffer_.getInt(0); if (frameSize <= 0) { - LOGGER.severe("Read an invalid frame size of " + frameSize + LOGGER.error("Read an invalid frame size of " + frameSize + ". Are you using TFramedTransport on the client side?"); return false; } @@ -520,7 +520,7 @@ public class TNonblockingServer extends TServer { // if this frame will always be too large for this server, log the // error and close the connection. if (frameSize + 4 > MAX_READ_BUFFER_BYTES) { - LOGGER.severe("Read a frame size of " + frameSize + LOGGER.error("Read a frame size of " + frameSize + ", which is bigger than the maximum allowable buffer size for ALL connections."); return false; } @@ -569,7 +569,7 @@ public class TNonblockingServer extends TServer { } // if we fall through to this point, then the state must be invalid. - LOGGER.severe("Read was called but state is invalid (" + state_ + ")"); + LOGGER.error("Read was called but state is invalid (" + state_ + ")"); return false; } @@ -583,7 +583,7 @@ public class TNonblockingServer extends TServer { return false; } } catch (IOException e) { - LOGGER.log(Level.WARNING, "Got an IOException during write!", e); + LOGGER.warn("Got an IOException during write!", e); return false; } @@ -594,7 +594,7 @@ public class TNonblockingServer extends TServer { return true; } - LOGGER.severe("Write was called, but state is invalid (" + state_ + ")"); + LOGGER.error("Write was called, but state is invalid (" + state_ + ")"); return false; } @@ -613,7 +613,7 @@ public class TNonblockingServer extends TServer { close(); selectionKey_.cancel(); } else { - LOGGER.severe( + LOGGER.error( "changeSelectInterest was called, but state is invalid (" + state_ + ")"); } @@ -682,9 +682,9 @@ public class TNonblockingServer extends TServer { responseReady(); return; } catch (TException te) { - LOGGER.log(Level.WARNING, "Exception while invoking!", te); + LOGGER.warn("Exception while invoking!", te); } catch (Exception e) { - LOGGER.log(Level.SEVERE, "Unexpected exception while invoking!", e); + LOGGER.error("Unexpected exception while invoking!", e); } // This will only be reached when there is an exception. state_ = AWAITING_CLOSE; @@ -721,7 +721,7 @@ public class TNonblockingServer extends TServer { } return true; } catch (IOException e) { - LOGGER.log(Level.WARNING, "Got an IOException in internalRead!", e); + LOGGER.warn("Got an IOException in internalRead!", e); return false; } } diff --git a/lib/java/src/org/apache/thrift/server/TSimpleServer.java b/lib/java/src/org/apache/thrift/server/TSimpleServer.java index c053d970..b3ee5ad6 100644 --- a/lib/java/src/org/apache/thrift/server/TSimpleServer.java +++ b/lib/java/src/org/apache/thrift/server/TSimpleServer.java @@ -19,9 +19,6 @@ package org.apache.thrift.server; -import java.util.logging.Level; -import java.util.logging.Logger; - import org.apache.thrift.TException; import org.apache.thrift.TProcessor; import org.apache.thrift.TProcessorFactory; @@ -31,6 +28,7 @@ import org.apache.thrift.transport.TServerTransport; import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportFactory; import org.apache.thrift.transport.TTransportException; +import org.apache.log4j.Logger; /** * Simple singlethreaded server for testing. @@ -94,7 +92,7 @@ public class TSimpleServer extends TServer { try { serverTransport_.listen(); } catch (TTransportException ttx) { - LOGGER.log(Level.SEVERE, "Error occurred during listening.", ttx); + LOGGER.error("Error occurred during listening.", ttx); return; } @@ -119,11 +117,11 @@ public class TSimpleServer extends TServer { // Client died, just move on } catch (TException tx) { if (!stopped_) { - LOGGER.log(Level.SEVERE, "Thrift error occurred during processing of message.", tx); + LOGGER.error("Thrift error occurred during processing of message.", tx); } } catch (Exception x) { if (!stopped_) { - LOGGER.log(Level.SEVERE, "Error occurred during processing of message.", x); + LOGGER.error("Error occurred during processing of message.", x); } } diff --git a/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java b/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java index 68280ab5..ebc5a9be 100644 --- a/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java +++ b/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java @@ -29,14 +29,14 @@ import org.apache.thrift.transport.TServerTransport; import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportException; import org.apache.thrift.transport.TTransportFactory; +import org.apache.log4j.Logger; +import org.apache.log4j.Level; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; -import java.util.logging.Level; -import java.util.logging.Logger; /** @@ -172,7 +172,7 @@ public class TThreadPoolServer extends TServer { try { serverTransport_.listen(); } catch (TTransportException ttx) { - LOGGER.log(Level.SEVERE, "Error occurred during listening.", ttx); + LOGGER.error("Error occurred during listening.", ttx); return; } @@ -186,7 +186,7 @@ public class TThreadPoolServer extends TServer { } catch (TTransportException ttx) { if (!stopped_) { ++failureCount; - LOGGER.log(Level.WARNING, "Transport error occurred during acceptance of message.", ttx); + LOGGER.warn("Transport error occurred during acceptance of message.", ttx); } } } @@ -253,9 +253,9 @@ public class TThreadPoolServer extends TServer { } catch (TTransportException ttx) { // Assume the client died and continue silently } catch (TException tx) { - LOGGER.log(Level.SEVERE, "Thrift error occurred during processing of message.", tx); + LOGGER.error("Thrift error occurred during processing of message.", tx); } catch (Exception x) { - LOGGER.log(Level.SEVERE, "Error occurred during processing of message.", x); + LOGGER.error("Error occurred during processing of message.", x); } if (inputTransport != null) { diff --git a/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java b/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java index 4a714a62..89cdb582 100644 --- a/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java +++ b/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java @@ -19,11 +19,11 @@ package org.apache.thrift.transport; +import org.apache.log4j.Logger; + import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.util.logging.Level; -import java.util.logging.Logger; /** * This is the most commonly used base transport. It takes an InputStream @@ -100,7 +100,7 @@ public class TIOStreamTransport extends TTransport { try { inputStream_.close(); } catch (IOException iox) { - LOGGER.log(Level.WARNING, "Error closing input stream.", iox); + LOGGER.warn("Error closing input stream.", iox); } inputStream_ = null; } @@ -108,7 +108,7 @@ public class TIOStreamTransport extends TTransport { try { outputStream_.close(); } catch (IOException iox) { - LOGGER.log(Level.WARNING, "Error closing output stream.", iox); + LOGGER.warn("Error closing output stream.", iox); } outputStream_ = null; } diff --git a/lib/java/src/org/apache/thrift/transport/TServerSocket.java b/lib/java/src/org/apache/thrift/transport/TServerSocket.java index e6cd1131..796cd659 100644 --- a/lib/java/src/org/apache/thrift/transport/TServerSocket.java +++ b/lib/java/src/org/apache/thrift/transport/TServerSocket.java @@ -19,13 +19,13 @@ package org.apache.thrift.transport; +import org.apache.log4j.Logger; + import java.io.IOException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.net.Socket; import java.net.SocketException; -import java.util.logging.Level; -import java.util.logging.Logger; /** * Wrapper around ServerSocket for Thrift. @@ -105,7 +105,7 @@ public class TServerSocket extends TServerTransport { try { serverSocket_.setSoTimeout(0); } catch (SocketException sx) { - LOGGER.log(Level.WARNING, "Could not set socket timeout.", sx); + LOGGER.error("Could not set socket timeout.", sx); } } } @@ -129,7 +129,7 @@ public class TServerSocket extends TServerTransport { try { serverSocket_.close(); } catch (IOException iox) { - LOGGER.log(Level.WARNING, "Could not close server socket.", iox); + LOGGER.warn("Could not close server socket.", iox); } serverSocket_ = null; } diff --git a/lib/java/src/org/apache/thrift/transport/TSocket.java b/lib/java/src/org/apache/thrift/transport/TSocket.java index 333e9be5..cdf1bcc4 100644 --- a/lib/java/src/org/apache/thrift/transport/TSocket.java +++ b/lib/java/src/org/apache/thrift/transport/TSocket.java @@ -19,14 +19,14 @@ package org.apache.thrift.transport; +import org.apache.log4j.Logger; + import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.IOException; import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketException; -import java.util.logging.Level; -import java.util.logging.Logger; /** * Socket implementation of the TTransport interface. To be commented soon! @@ -68,7 +68,7 @@ public class TSocket extends TIOStreamTransport { socket_.setSoLinger(false, 0); socket_.setTcpNoDelay(true); } catch (SocketException sx) { - LOGGER.log(Level.WARNING, "Could not configure socket.", sx); + LOGGER.warn("Could not configure socket.", sx); } if (isOpen()) { @@ -118,7 +118,7 @@ public class TSocket extends TIOStreamTransport { socket_.setTcpNoDelay(true); socket_.setSoTimeout(timeout_); } catch (SocketException sx) { - LOGGER.log(Level.WARNING, "Could not configure socket.", sx); + LOGGER.error("Could not configure socket.", sx); } } @@ -132,7 +132,7 @@ public class TSocket extends TIOStreamTransport { try { socket_.setSoTimeout(timeout); } catch (SocketException sx) { - LOGGER.log(Level.WARNING, "Could not set socket timeout.", sx); + LOGGER.warn("Could not set socket timeout.", sx); } } @@ -197,7 +197,7 @@ public class TSocket extends TIOStreamTransport { try { socket_.close(); } catch (IOException iox) { - LOGGER.log(Level.WARNING, "Could not close socket.", iox); + LOGGER.warn("Could not close socket.", iox); } socket_ = null; } -- 2.17.1