You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by sd...@apache.org on 2004/07/02 19:14:38 UTC

cvs commit: logging-log4j/src/java/org/apache/log4j/chainsaw ChainsawAppenderHandler.java

sdeboy      2004/07/02 10:14:38

  Modified:    src/java/org/apache/log4j/spi LoggingEventFieldResolver.java
               src/java/org/apache/log4j/chainsaw
                        ChainsawAppenderHandler.java
  Log:
  Now using host from remoteSourceInfo (if available) as the 'hostname' property for use in Chainsaw if no 'hostname' property was provided on the event.
  
  Revision  Changes    Path
  1.8       +6 -1      logging-log4j/src/java/org/apache/log4j/spi/LoggingEventFieldResolver.java
  
  Index: LoggingEventFieldResolver.java
  ===================================================================
  RCS file: /home/cvs/logging-log4j/src/java/org/apache/log4j/spi/LoggingEventFieldResolver.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- LoggingEventFieldResolver.java	10 May 2004 09:10:40 -0000	1.7
  +++ LoggingEventFieldResolver.java	2 Jul 2004 17:14:38 -0000	1.8
  @@ -98,16 +98,21 @@
     	  }
         StringTokenizer tokenizer = new StringTokenizer(replaceText);
         StringBuffer result = new StringBuffer();
  +      boolean found = false;
         
         while (tokenizer.hasMoreTokens()) {
             String token = tokenizer.nextToken();
             if (isField(token) || token.toUpperCase().startsWith(PROP_FIELD)) {
                 result.append(getValue(token, event).toString());
  +              found = true;
             } else { 
                 result.append(token);
             }
         }
  -      return result.toString();
  +      if (found) {
  +      	return result.toString();
  +      }
  +      return null;
     }
   
     public static LoggingEventFieldResolver getInstance() {
  
  
  
  1.23      +16 -0     logging-log4j/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java
  
  Index: ChainsawAppenderHandler.java
  ===================================================================
  RCS file: /home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- ChainsawAppenderHandler.java	5 Jun 2004 07:52:04 -0000	1.22
  +++ ChainsawAppenderHandler.java	2 Jul 2004 17:14:38 -0000	1.23
  @@ -28,6 +28,7 @@
   
   import org.apache.log4j.AppenderSkeleton;
   import org.apache.log4j.LogManager;
  +import org.apache.log4j.helpers.Constants;
   import org.apache.log4j.helpers.LogLog;
   import org.apache.log4j.net.SocketReceiver;
   import org.apache.log4j.rule.ExpressionRule;
  @@ -279,6 +280,21 @@
   
               while (iter.hasNext()) {
                 LoggingEvent e = (LoggingEvent) iter.next();
  +              //attempt to set the host name (without port), from remoteSourceInfo
  +              //if 'hostname' property not provided
  +              if (e.getProperty(Constants.HOSTNAME_KEY) == null) {
  +              		String remoteHost =
  +              		e.getProperty(ChainsawConstants.LOG4J_REMOTEHOST_KEY);
  +              		
  +              		if (remoteHost != null) {
  +              			int colonIndex = remoteHost.indexOf(":");
  +              		if (colonIndex == -1) {
  +              		colonIndex = remoteHost.length();
  +              		}
  +              		
  +              		e.setProperty(Constants.HOSTNAME_KEY, remoteHost.substring(0, colonIndex));
  +           		}              	
  +              }
   
                 for (
                   Iterator itery = customExpressionRules.entrySet().iterator();
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org