This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 10.1.x in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit b7f2f815e0efc4dc95291fa95af9a76e1b5f3193 Author: Mark Thomas <ma...@apache.org> AuthorDate: Tue Aug 19 14:45:46 2025 +0100 Review warn logging. Add exceptions where appropriate. Clean-up. --- java/org/apache/catalina/core/NamingContextListener.java | 2 +- java/org/apache/catalina/core/StandardWrapper.java | 4 ++-- java/org/apache/catalina/servlets/CGIServlet.java | 2 +- java/org/apache/catalina/session/PersistentManagerBase.java | 6 +++--- java/org/apache/catalina/startup/CatalinaProperties.java | 2 +- .../catalina/tribes/group/interceptors/NonBlockingCoordinator.java | 1 + java/org/apache/catalina/tribes/io/ObjectReader.java | 4 ++-- java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java | 5 ++++- .../apache/catalina/tribes/transport/nio/NioReplicationTask.java | 6 +++++- .../main/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java | 2 +- webapps/docs/changelog.xml | 2 +- 11 files changed, 22 insertions(+), 14 deletions(-) diff --git a/java/org/apache/catalina/core/NamingContextListener.java b/java/org/apache/catalina/core/NamingContextListener.java index 0118dde312..446bb70e34 100644 --- a/java/org/apache/catalina/core/NamingContextListener.java +++ b/java/org/apache/catalina/core/NamingContextListener.java @@ -989,7 +989,7 @@ public class NamingContextListener implements LifecycleListener, PropertyChangeL Registry.getRegistry(null).registerComponent(actualResource, on, null); objectNames.put(resource.getName(), on); } catch (Exception e) { - log.warn(sm.getString("naming.jmxRegistrationFailed", e)); + log.warn(sm.getString("naming.jmxRegistrationFailed", resource.getName()), e); } // Bug 63210. DBCP2 DataSources require an explicit close. This goes // further and cleans up and AutoCloseable DataSource by default. diff --git a/java/org/apache/catalina/core/StandardWrapper.java b/java/org/apache/catalina/core/StandardWrapper.java index d0216f7b1f..a8c6794f24 100644 --- a/java/org/apache/catalina/core/StandardWrapper.java +++ b/java/org/apache/catalina/core/StandardWrapper.java @@ -722,8 +722,8 @@ public class StandardWrapper extends ContainerBase implements ServletConfig, Wra try { jspMonitorON = new ObjectName(oname.toString()); Registry.getRegistry(null).registerComponent(instance, jspMonitorON, null); - } catch (Exception ex) { - log.warn(sm.getString("standardWrapper.jspMonitorError", instance)); + } catch (Exception e) { + log.warn(sm.getString("standardWrapper.jspMonitorError", instance), e); } } } diff --git a/java/org/apache/catalina/servlets/CGIServlet.java b/java/org/apache/catalina/servlets/CGIServlet.java index e1bfb1919f..d40eda0c71 100644 --- a/java/org/apache/catalina/servlets/CGIServlet.java +++ b/java/org/apache/catalina/servlets/CGIServlet.java @@ -1537,7 +1537,7 @@ public final class CGIServlet extends HttpServlet { try { errReaderThread.join(stderrTimeout); } catch (InterruptedException e) { - log.warn(sm.getString("cgiServlet.runReaderInterrupt")); + log.warn(sm.getString("cgiServlet.runReaderInterrupt"), e); } } if (proc != null) { diff --git a/java/org/apache/catalina/session/PersistentManagerBase.java b/java/org/apache/catalina/session/PersistentManagerBase.java index f4d2845d11..9b6f46780f 100644 --- a/java/org/apache/catalina/session/PersistentManagerBase.java +++ b/java/org/apache/catalina/session/PersistentManagerBase.java @@ -607,7 +607,7 @@ public abstract class PersistentManagerBase extends ManagerBase implements Store // Store session count result += getStore().getSize(); } catch (IOException ioe) { - log.warn(sm.getString("persistentManager.storeSizeException")); + log.warn(sm.getString("persistentManager.storeSizeException"), ioe); } return result; } @@ -620,8 +620,8 @@ public abstract class PersistentManagerBase extends ManagerBase implements Store try { // Store session ID list sessionIds.addAll(Arrays.asList(getStore().keys())); - } catch (IOException e) { - log.warn(sm.getString("persistentManager.storeKeysException")); + } catch (IOException ioe) { + log.warn(sm.getString("persistentManager.storeKeysException"), ioe); } return sessionIds; } diff --git a/java/org/apache/catalina/startup/CatalinaProperties.java b/java/org/apache/catalina/startup/CatalinaProperties.java index 3566e1a9a7..64b480d18a 100644 --- a/java/org/apache/catalina/startup/CatalinaProperties.java +++ b/java/org/apache/catalina/startup/CatalinaProperties.java @@ -102,7 +102,7 @@ public class CatalinaProperties { properties.load(is); } catch (Throwable t) { handleThrowable(t); - log.warn(t); + log.warn(t.getMessage(),t); } finally { try { is.close(); diff --git a/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java b/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java index 1ba47d16d8..3c031727fe 100644 --- a/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java +++ b/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java @@ -286,6 +286,7 @@ public class NonBlockingCoordinator extends ChannelInterceptorBase { sendElectionMsg(local, msg.getMembers()[current], msg); sent = true; } catch (ChannelException x) { + // Exception is logged further up stack log.warn(sm.getString("nonBlockingCoordinator.electionMessage.sendfailed", msg.getMembers()[current])); current = Arrays.nextIndex(msg.getMembers()[current], msg.getMembers()); if (current == next) { diff --git a/java/org/apache/catalina/tribes/io/ObjectReader.java b/java/org/apache/catalina/tribes/io/ObjectReader.java index 7f8c340e44..519004d3c4 100644 --- a/java/org/apache/catalina/tribes/io/ObjectReader.java +++ b/java/org/apache/catalina/tribes/io/ObjectReader.java @@ -66,10 +66,10 @@ public class ObjectReader { public ObjectReader(Socket socket) { try { this.buffer = new XByteBuffer(socket.getReceiveBufferSize(), true); - } catch (IOException x) { + } catch (IOException ioe) { // unable to get buffer size log.warn(sm.getString("objectReader.retrieveFailed.socketReceiverBufferSize", - Integer.toString(Constants.DEFAULT_CLUSTER_MSG_BUFFER_SIZE))); + Integer.toString(Constants.DEFAULT_CLUSTER_MSG_BUFFER_SIZE)), ioe); this.buffer = new XByteBuffer(Constants.DEFAULT_CLUSTER_MSG_BUFFER_SIZE, true); } } diff --git a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java index 5fb1ceb925..ce1ba546af 100644 --- a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java +++ b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java @@ -238,10 +238,13 @@ public abstract class AbstractReplicatedMap<K, V> // state is transferred, we are ready for messaging broadcast(MapMessage.MSG_START, true); } catch (ChannelException x) { - log.warn(sm.getString("abstractReplicatedMap.unableSend.startMessage")); if (terminate) { + // Exception is logged further up stack + log.warn(sm.getString("abstractReplicatedMap.unableSend.startMessage")); breakdown(); throw new RuntimeException(sm.getString("abstractReplicatedMap.unableStart"), x); + } else { + log.warn(sm.getString("abstractReplicatedMap.unableSend.startMessage"), x); } } this.state = State.INITIALIZED; diff --git a/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java b/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java index cff405bbb8..f73952927c 100644 --- a/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java +++ b/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java @@ -340,7 +340,11 @@ public class NioReplicationTask extends AbstractRxTask { ((DatagramChannel) channel).socket().getInetAddress())); } } catch (IOException x) { - log.warn(sm.getString("nioReplicationTask.unable.ack", x.getMessage())); + if (log.isDebugEnabled()) { + log.debug(sm.getString("nioReplicationTask.unable.ack", x.getMessage()), x); + } else { + log.warn(sm.getString("nioReplicationTask.unable.ack", x.getMessage())); + } } } diff --git a/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java b/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java index ee20304f6a..d605c9e575 100644 --- a/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java +++ b/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java @@ -578,7 +578,7 @@ public class DataSourceFactory implements ObjectFactory { context = new InitialContext(); jndiDS = context.lookup(poolProperties.getDataSourceJNDI()); } catch (NamingException e) { - log.warn("The name \""+poolProperties.getDataSourceJNDI()+"\" cannot be found in the InitialContext."); + log.warn("The name \""+poolProperties.getDataSourceJNDI()+"\" cannot be found in the InitialContext.", e); } } if (jndiDS!=null) { diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 96114c730d..bb4caf19a9 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -110,7 +110,7 @@ <scode> Review logging and include the full stack trace and exception message by default rather then just the exception message when logging an error - in response to an exception. (markt) + or warning in response to an exception. (markt) </scode> </changelog> </subsection> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org