Reputation: 548
I am using more than debug level. In other words,debug,info,warn,error Printed out in scrren
I would like to make different format by log level in logback.xml.
Format of debug level is %-5level:%msg%n
Format of info level is %-5level.%d{yyyy-MM-dd HH:mm:ss}:%msg%n
Is it possble to make different format by level(debug,info....)?
This is my logback.xml.
<configuration scan="true" scanPeriod="30">
<!--debug level format-->
<appender name="STDOUT_DEBUG" class="ch.qos.logback.core.ConsoleAppender">
<target>System.out</target>
<encoder>
<pattern>%-5level:%msg%n</pattern>
</encoder>
<!--info level format-->
<appender name="STDOUT_INFO" class="ch.qos.logback.core.ConsoleAppender">
<target>System.out</target>
<encoder>
<pattern>%-5level.%d{yyyy-MM-dd HH:mm:ss}:%msg%n</pattern>
</encoder>
</appender>
<!-- I don't know How to set-->
</configuration>
Upvotes: 0
Views: 246
Reputation: 26926
You can write your custom layout extending LayoutBase to have the maximum flexibility.
You need to rewrite the code of the doLayout
method
public String doLayout(ILoggingEvent event) {
switch (event.getLevel()) {
... // Your logic here
}
}
Upvotes: 1