Grails Logging无法在分叉模式下工作

时间:2013-05-22 15:56:45

标签: grails logging log4j fork

我遇到一个问题,当我从grails以非分叉模式运行tomcat时,日志记录正常工作,但在分叉模式下无法正常工作。

这是我的Log4j配置:

Config.groovy中

// log4j configuration
log4j = {

appenders {
    file name:"fileLogger", file: "c:/logs/app-log.log", threshold: Level.DEBUG
}

debug fileLogger: ['com.foo', 'BootStrap']

info  fileLogger: ['org.springframework']

error fileLogger: [
        'org.codehaus.groovy.grails.web.servlet',        // controllers
        'org.codehaus.groovy.grails.web.pages',          // GSP
        'org.codehaus.groovy.grails.web.sitemesh',       // layouts
        'org.codehaus.groovy.grails.web.mapping.filter', // URL mapping
        'org.codehaus.groovy.grails.web.mapping',        // URL mapping
        'org.codehaus.groovy.grails.commons',            // core / classloading
        'org.codehaus.groovy.grails.plugins',            // plugins
        'org.codehaus.groovy.grails.orm.hibernate',      // hibernate integration
        'org.hibernate',
        'net.sf.ehcache.hibernate']
}

当我运行grails run-app时,会正确填充日志文件。

但是,当我将BuildConfig.groovy文件更改为以分叉模式运行tomcat时:

BuildConfig.groovy:

grails.project.fork = [
    run: [maxMemory:1024, minMemory:64, debug:false, maxPerm:256]
]

日志文件未填充。

我的配置有问题吗?为什么它会在一种模式下工作,而不是在另一种模式下工作?

1 个答案:

答案 0 :(得分:0)

您将appender的阈值设置为DEBUG级别。我认为在分叉的tomcat模式下,默认级别设置为INFO。为了使其适用于分叉模式,您可能需要将日志记录级别增加到INFO并将DEBUG更改为INFO。

info fileLogger: ['org.springframework', 'com.foo', 'BootStrap']