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

          Grails 中log4j日志的配置

          Posted on 2009-03-16 14:13 BearRui(AK-47) 閱讀(3581) 評論(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/
          [聲明]:本博所有文章版權歸作者所有(除特殊說明以外),轉載請注明出處.
          英雄,別走啊,幫哥評論下:  

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

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


          網站導航:
           
          主站蜘蛛池模板: 汪清县| 丽水市| 双流县| 肇源县| 太和县| 山阳县| 桂平市| 洛隆县| 来安县| 大余县| 胶南市| 东阿县| 织金县| 衡南县| 重庆市| 叙永县| 沂水县| 芜湖县| 普兰店市| 扎囊县| 衢州市| 邢台县| 思茅市| 凤翔县| 依兰县| 桃园市| 孟津县| 八宿县| 兴隆县| 崇阳县| 二连浩特市| 屏边| 江陵县| 平凉市| 常熟市| 宁阳县| 永善县| 屏山县| 泾阳县| 双流县| 景德镇市|