kaka的gravatar头像
kaka 2014-09-28 15:11:36

java logback日志输出到多个文件配置学习教程

这个简单的示例是我最近解决一个疑惑的思想,就是把不同级别的日志输出到不同的文件中,或者说把不同用途的日志输出到不同的文件中。

之前我在问答中提问如何监控quartz任务的状态和运行情况http://www.zuidaima.com/question/2007531490036736.htm,有人提醒我加日志,我就尝试着专门为quartz添加了一个输出日志,基本能够解决我的问题,而且还能够过滤掉很多我不关注的日志信息。示例中只是logback的一丁点功能,logback异常强大,后面继续学习。

例子很简单,没啥看的,主要是logback日志框架比较强大,大家可以多学习下,例子中我将logback内部的加载信息也打印出来了,大家也可以看看

public class TestLogback {
	
	private Logger log = LoggerFactory.getLogger(TestLogback.class);
	
	private Logger monitorLog = LoggerFactory.getLogger("monitorLog");
	
	public void TestDebug(){
		log.debug("this is debug level log"+new Date());
	}
	
	public void TestInfo(){
		monitorLog.info("this is Info level log"+new Date());
	}
	
    public static void main( String[] args ){
    	LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
    	StatusPrinter.print(lc);
    	new TestLogback().TestInfo();
    	new TestLogback().TestDebug();
    }
}
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>  
	<contextName>myAppName</contextName><!-- 区分不同应用程序的记录,默认为default -->
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">  
        <file>E:\\debug.log</file>  
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
            <fileNamePattern>logs/xxx.%d{yyyy-MM-dd}.log.zip</fileNamePattern>  
        </rollingPolicy>  
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">  
            <pattern>%-20(%d{HH:mm:ss.SSS} [%thread]) %-5level %logger{80} - %msg%n</pattern>  
        </encoder>  
    </appender>  
      
    <appender name="event" class="ch.qos.logback.core.rolling.RollingFileAppender">  
        <file>E:\\info.log</file>  
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
            <fileNamePattern>E:\\event.%d{yyyy-MM-dd}.log</fileNamePattern>  
            <maxHistory>30</maxHistory>  
        </rollingPolicy>  
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">  
            <pattern>%msg%n</pattern>  
        </encoder>  
    </appender>  
  
    <logger name="monitorLog" level="INFO" additivity="false">  
        <appender-ref ref="event" />  
    </logger>  
  
    <root level="DEBUG">  
        <appender-ref ref="file" />  
    </root>  
</configuration>    

效果如下:

java logback日志输出到多个文件配置学习教程


最代码官方编辑于2014-9-29 10:16:47


打赏

文件名:lockbackDemo.rar,文件大小:7.083K 下载
  • /
      • /lockbackDemo
        • /lockbackDemo/.classpath
        • /lockbackDemo/.project
          • /lockbackDemo/.settings
            • /lockbackDemo/.settings/org.eclipse.jdt.core.prefs
            • /lockbackDemo/.settings/org.maven.ide.eclipse.prefs
        • /lockbackDemo/pom.xml
          • /lockbackDemo/target
              • /lockbackDemo/target/classes
                  • /lockbackDemo/target/classes/com
                      • /lockbackDemo/target/classes/com/zq
                          • /lockbackDemo/target/classes/com/zq/logback
                              • /lockbackDemo/target/classes/com/zq/logback/lockbackDemo
                                • /lockbackDemo/target/classes/com/zq/logback/lockbackDemo/TestLogback.class
                • /lockbackDemo/target/classes/logback.xml
最代码最近下载分享源代码列表最近下载
0312wangchen  LV26 2021年12月13日
zhaokai0224  LV14 2021年5月11日
winner_0715  LV1 2017年12月29日
fengyaofei  LV16 2017年12月13日
hb148  LV8 2017年7月28日
shou_zy  LV11 2017年5月5日
xuzgbao123  LV1 2017年4月27日
黄飞鸿  LV19 2017年2月8日
jiangarctic  LV17 2016年8月12日
Yuancc  LV21 2016年7月22日
最代码最近浏览分享源代码列表最近浏览
落后就要挨打  LV26 2023年1月13日
0312wangchen  LV26 2021年12月13日
zhaokai0224  LV14 2021年5月11日
无花空折枝  LV9 2021年3月19日
xb1406112453  LV5 2021年3月11日
newhaijun  LV15 2020年11月25日
a3870764722a  LV22 2020年6月23日
里更debug  LV10 2020年5月21日
h1787415 2020年4月27日
暂无贡献等级
laogao 2020年4月23日
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友