Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 30th, 2012  |  syntax: None  |  size: 1.08 KB  |  hits: 10  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. How to specify Custom / Extended Logger in log4j.xml file?
  2. package com.acando.norolnes;
  3.  
  4. public class MyClass {
  5.     public String foo;
  6.     public int bar;
  7. }
  8.        
  9. package com.acando.norolnes;
  10.  
  11. import org.apache.log4j.or.ObjectRenderer;
  12.  
  13. public class MyClassRenderer implements ObjectRenderer {
  14.  
  15.     @Override
  16.     public String doRender(Object arg0) {
  17.         if(arg0 instanceof MyClass) {
  18.             MyClass m = (MyClass)arg0;
  19.             return "("+m.foo+" "+m.bar+")";
  20.         }
  21.         return arg0.toString();
  22.     }
  23. }
  24.        
  25. <?xml version="1.0" encoding="UTF-8"?>
  26. <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >
  27. <log4j:configuration>
  28.   <renderer renderedClass="com.acando.norolnes.MyClass"
  29.             renderingClass="com.acando.norolnes.MyClassRenderer"/>
  30.   <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
  31.     <layout class="org.apache.log4j.PatternLayout">
  32.       <param name="ConversionPattern" value="%d{ABSOLUTE} %5p %c{1}:%L - %m%n"/>
  33.     </layout>
  34.   </appender>
  35.   <root>
  36.     <priority value="debug"></priority>
  37.     <appender-ref ref="stdout"/>
  38.   </root>
  39. </log4j:configuration>