Hi Ceki

> 
> Alternatively, you could write a custom conversion specifier. If you had a 
> specifier called %debug which output contents only for level DEBUG, and a 
> %warn specifier which output contents only for level WARN and another 
> specifier %ERROR which output contents for ERROR, your pattern could be 
> written as
> 
> %debug(%level %d %t) %error(%level) %info(%level) %m%n
> 
> See http://logback.qos.ch/manual/layouts.html#customConversionSpecifier
> for documentation on this topic.
> 

I tried your “custom conversion specifier” approach. I think I am missing 
something. In your logback.xml it looks like you are able to pass arguments. I 
used a debugger how ever it did not appear like the the ILoggingEvent had 
anything particularly useful other then the level and thread Name values.  
List<String> optionList = getOptionList(); gives me [%level %d %t] how ever the 
values have not been expanded

Your solution is very close to what I want to do. 

Thanks in advance

Andy

public class DebugConverter extends ClassicConverter {
    public DebugConverter() {
        // TODO Auto-generated constructor stub
    }

    @Override
    public String convert(ILoggingEvent event) {
        List<String> optionList = getOptionList();
        Level level = event.getLevel();
        System.err.println("convert() level:" + level);
        return "DebugConverter.convert()";
    }
}

<configuration>
        <conversionRule conversionWord="AST_DEBUG" 
                  
converterClass="com.apple.ast.logging.converter.DebugConverter" />
                  
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
                        <!-- 
            <pattern>%-5level %date{HH:mm:ss,SSS} [%thread] [%class{16}] 
[line:%L] %msg%n</pattern>
            -->
           
            <pattern>%AST_DEBUG{%level %d %t}  %m%n</pattern>
        </encoder>
    </appender>

    <root level="DEBUG">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

_______________________________________________
Logback-user mailing list
[email protected]
http://mailman.qos.ch/mailman/listinfo/logback-user

Reply via email to