隨筆-46  評論-64  文章-2  trackbacks-0
          首先看這一段簡單的log4j配置
          log4j.logger.cn=debug,stdout
          log4j.logger.cn.heapstack
          =debug,stdout
          log4j.appender.stdout
          =org.apache.log4j.ConsoleAppender
          log4j.appender.stdout.layout
          =org.apache.log4j.PatternLayout
          log4j.appender.stdout.layout.ConversionPattern
          =%d?[%t]?%-5p?%c?line.%L:?%m%n
          這個配置導(dǎo)致日志文件中輸出兩行相同的結(jié)果

          原因是這樣的,第二行的logger繼承自第一行的logger,兩個logger的apperder都是指向stdout
          Appender的輸出是獨(dú)立的,所以導(dǎo)致了我們使用如下代碼獲得logger的時候會輸出兩行

          public static Logger logger = Logger.getLogger(cn.heapstack.demopkg.Main.class);


          知道這個原因之后解決辦法也就簡單了,即我們不需要定義重復(fù)的appder,
          可以把第二行最后的stdout去掉,或者注釋掉第二行,如果輸出級別相同的話
          posted on 2007-09-28 09:57 jht 閱讀(1324) 評論(0)  編輯  收藏 所屬分類: J2EE
          主站蜘蛛池模板: 襄垣县| 武穴市| 彭山县| 温州市| 仪陇县| 新宁县| 江油市| 通化县| 西和县| 清水县| 怀柔区| 连江县| 南宁市| 丰台区| 吉林市| 平和县| 景德镇市| 镇赉县| 大宁县| 临泉县| 抚顺市| 济南市| 宁远县| 兰考县| 万载县| 朝阳市| 满城县| 定州市| 黑水县| 普兰县| 盐亭县| 长葛市| 瓦房店市| 佛坪县| 寻甸| 兴文县| 太和县| 岑巩县| 卢龙县| 洪洞县| 图们市|