7

私はgrails config.groovyにこのlog4j構成を持っています

log4j = {
    error  'org.codehaus.groovy.grails.web.servlet',  //  controllers
                   'org.codehaus.groovy.grails.web.pages' //  GSP
    warn 'org.mortbay.log' 


    appenders {
        rollingFile  name:'infoLog', file:'info.log', threshold: org.apache.log4j.Level.INFO, maxFileSize:1024
        rollingFile  name:'warnLog', file:'warn.log', threshold: org.apache.log4j.Level.WARN, maxFileSize:1024
        rollingFile  name:'errorLog', file:'error.log', threshold: org.apache.log4j.Level.ERROR, maxFileSize:1024
        rollingFile  name:'custom', file:'custom.log', maxFileSize:1024
    }

    root {
        info 'infoLog','warnLog','errorLog','custom', stdout
        error()
        additivity = true
    }
}

infoLog、warnLog、およびerrorLogは前の質問からのものでした...それらはうまく機能していました。

ここで、「custom」という名前の新しい RollingFile を追加します ...

log.info("something .... ${obj}"); を使用してコントローラーとサービスからログを記録しようとしました。しかし、メッセージが custom.log に挿入されていないようです。構成に何か追加する必要がありますか?

ありがとうございました !!

4

3 に答える 3

6

grails のメーリング リストから回答を得ました。

私はちょうど追加する必要があります

「grails.app」をデバッグします

怒鳴る警告「org.mortbay.log」

ケースクローズ!:)

于 2009-07-22T02:44:08.200 に答える
0

私はまったく同じjetty/tomcat環境を持っています。それを理解するために何時間も費やしました。トリックは、ファイルの場所 (私の場合は相対パス) を Config.groovy 内のグローバル変数として定義し、環境ブロックでカスタマイズして、log4j クロージャー内の変数の場所を使用することです。サンプル コードはhttp://denistek.blogspot.com/2010/02/grails-environment-specific-logging-to.htmlにあります。

于 2010-02-25T21:11:24.523 に答える
0

Log4j: 特定のアペンダーに書き込む方法を参照してください。

結局、解決策は、加法性設定をパッケージ構成に入れることです。

info specialLog:'activityLog', additivity:false

于 2010-03-06T12:02:06.300 に答える