1 package de.webman.util.log4j; 2 3 import org.apache.log4j.*; 4 import org.apache.log4j.helpers.FormattingInfo; 5 import org.apache.log4j.helpers.PatternConverter; 6 import org.apache.log4j.helpers.PatternParser; 7 import org.apache.log4j.spi.LoggingEvent; 8 9 28 public class WebmanPatternParser extends PatternParser 29 { 30 31 public WebmanPatternParser(String pattern) { 32 super(pattern); 33 } 34 35 public void finalizeConverter(char c) { 36 if (c == '#') { 37 addConverter(new UserDirPatternConverter(formattingInfo)); 38 currentLiteral.setLength(0); 39 } else { 40 super.finalizeConverter(c); 41 } 42 } 43 44 private class UserDirPatternConverter extends PatternConverter 45 { 46 UserDirPatternConverter(FormattingInfo formattingInfo) { 47 super(formattingInfo); 48 } 49 50 public String convert(LoggingEvent event) 51 { 52 String [] data = event.getThrowableInformation().getThrowableStrRep() ; 53 StringBuffer back = new StringBuffer (); 54 for (int i = 0; i < data.length; i++) 55 back.append(data[i]); 56 return back.toString(); 57 } 58 } 59 } 60 | Popular Tags |