posts - 36, comments - 419, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          Grails 中log4j日志的配置

          Posted on 2009-03-16 14:13 BearRui(AK-47) 閱讀(3577) 評論(0)  編輯  收藏 所屬分類: Grails
          Grails采用Log4j記錄日志信息,Log4j的配置信息寫在config.groovy文件中。

          一、Grails 1.1 可以為不同的包下面的代碼指定不同的日志級別,如:
          log4j = {
              // 設置控制器和GSP頁面的級別為error
              error  'org.codehaus.groovy.grails.web.servlet',  //  controllers
                     'org.codehaus.groovy.grails.web.pages' //  GSP

              // 設置插件中的日志級別為warn
              warn   'org.codehaus.groovy.grails.plugins'
          }

          二、定義自己的Appender
          Grails默認的Appender是把日志輸出到控制臺
          appenders {
                  console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n')
          }
          log4j支持很多種類型的appender,比如:JDBC,Console,File,rollingFile
          log4j的appender還支持多種日志輸出格式:Xml,Html,simple,pattern

          具體可以參考log4j的文檔:
          http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Appender.html
          http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Layout.html

          一般常用的appender是每天產生1個日志文件,配置如下:
          appenders {
                  appender new org.apache.log4j.DailyRollingFileAppender(name:"dailyAppender",layout:pattern(conversionPattern: '%c{2} %m%n'),fileName:"e:\\grails.log",datePattern:"'.'yyyy-MM-dd")
           }

          我們還可以定義多個appender,并為不同的級別的日志指定不同的appender,如:
          log4j = {
             appenders {
                  appender new org.apache.log4j.DailyRollingFileAppender(name:"dailyAppender",layout:pattern(conversionPattern: '%c{2} %m%n'),fileName:"e:\\grails.log",datePattern:"'.'yyyy-MM-dd")
                  console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n')
             }

              // error級別的日志采用dailyAppender記錄到文件中
              error  dailyAppender:'org.codehaus.groovy.grails.web.servlet',  //  controllers
                     'org.codehaus.groovy.grails.web.pages' //  GSP

              // error級別的日志則使用stdout直接輸出到控制臺
              warn   stdout:'org.codehaus.groovy.grails.plugins'
          }

          三、定義Root Logger
                雖然我們可以定義多個appender,并且為不同的級別指定不同的appender,但一般我們希望只定義1個appender,
          所有日志的輸出都使用這個appender,這個時候就需要用到root logger了。

          appenders {
                  appender new org.apache.log4j.DailyRollingFileAppender(name:"dailyAppender",layout:pattern(conversionPattern: '%c{2} %m%n'),fileName:"e:\\grails.log",datePattern:"'.'yyyy-MM-dd")
           }
          root{
                 error 'dailyAppender'
                 additivity = true
           }



          [作者]:BearRui(AK-47)
          [博客]: http://www.aygfsteel.com/bearrui/
          [聲明]:本博所有文章版權歸作者所有(除特殊說明以外),轉載請注明出處.
          英雄,別走啊,幫哥評論下:  

          精彩推薦 好文要頂 水平一般 看不懂 還需努力

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 南阳市| 荔浦县| 金堂县| 德清县| 长葛市| 马尔康县| 屯门区| 云南省| 祁阳县| 茂名市| 商河县| 四子王旗| 博客| 桃源县| 兴隆县| 琼结县| 广安市| 福州市| 青川县| 临颍县| 白沙| 许昌县| 丹巴县| 特克斯县| 湛江市| 康马县| 长子县| 霞浦县| 桑植县| 县级市| 富源县| 甘肃省| 格尔木市| 大城县| 墨玉县| 连平县| 蒙城县| 静海县| 六枝特区| 光山县| 香河县|