Author: markt
Date: Thu Jun 11 11:37:17 2009
New Revision: 783724

URL: http://svn.apache.org/viewvc?rev=783724&view=rev
Log:
Provide a little more information in the logs when parameters are invalid. 
Speeds up the process of tracking down the broken request in the access log. 
Don't show the stack trace unless debug is enabled.

Modified:
    tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java

Modified: tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java?rev=783724&r1=783723&r2=783724&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/http/Parameters.java Thu Jun 11 
11:37:17 2009
@@ -382,7 +382,14 @@
             pos=valEnd+1;
             
             if( nameEnd<=nameStart ) {
-                log.warn("Parameters: Invalid chunk ignored.");
+                StringBuffer msg = new StringBuffer("Parameters: Invalid chunk 
");
+                if (valEnd >= nameStart) {
+                    msg.append('\'');
+                    msg.append(new String(bytes, nameStart, valEnd));
+                    msg.append("' ");
+                }
+                msg.append("ignored.");
+                log.warn(msg);
                 continue;
                 // invalid chunk - it's better to ignore
             }
@@ -393,8 +400,14 @@
                 addParam( urlDecode(tmpName, enc), urlDecode(tmpValue, enc) );
             } catch (IOException e) {
                 // Exception during character decoding: skip parameter
-                log.warn("Parameters: Character decoding failed. " + 
-                         "Parameter skipped.", e);
+                String msg = "Parameters: Character decoding failed. " + 
+                        "Parameter '" + tmpName + "' with value '" +
+                        tmpValue + "' has been ignored.";
+                if (log.isDebugEnabled()) {
+                    log.debug(msg, e);
+                } else {
+                    log.warn(msg);
+                }
             }
 
             tmpName.recycle();



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to