This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
     new bc7be69ef3 Review warn logging. Add exceptions where appropriate. 
Clean-up.
bc7be69ef3 is described below

commit bc7be69ef375ad6c249a156aeb309d2931d12903
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 32d7e5d799..e61db72952 100644
--- a/java/org/apache/catalina/core/StandardWrapper.java
+++ b/java/org/apache/catalina/core/StandardWrapper.java
@@ -714,8 +714,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 02507fb14b..8ca68c1993 100644
--- a/java/org/apache/catalina/servlets/CGIServlet.java
+++ b/java/org/apache/catalina/servlets/CGIServlet.java
@@ -1538,7 +1538,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 772dd461cd..88b3b9b450 100644
--- a/java/org/apache/catalina/session/PersistentManagerBase.java
+++ b/java/org/apache/catalina/session/PersistentManagerBase.java
@@ -508,7 +508,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;
     }
@@ -521,8 +521,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 1220a87f0c..b2ba94b240 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 03560e7764..ba3d4b65f8 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 1b14131f4c..4c6fc48e2c 100644
--- a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
+++ b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
@@ -240,10 +240,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 c2e490f06c..4dff0dfa7d 100644
--- a/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
+++ b/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
@@ -338,7 +338,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 d0a2cd4c81..3aa4ddc7db 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -274,7 +274,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

Reply via email to