This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/11.0.x by this push:
new 810bc5c64c Review warn logging. Add exceptions where appropriate.
Clean-up.
810bc5c64c is described below
commit 810bc5c64c938423b6cc20149f38071fc34e80c6
Author: Mark Thomas <[email protected]>
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 ab3f7f6fd2..7263915492 100644
--- a/java/org/apache/catalina/servlets/CGIServlet.java
+++ b/java/org/apache/catalina/servlets/CGIServlet.java
@@ -1544,7 +1544,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 58d2d93b1b..b03d0fe7b7 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -118,7 +118,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: [email protected]
For additional commands, e-mail: [email protected]