grails - Grails 中单个类的输出日志到文件

标签 grails log4j

我正在尝试将单个包的 log4j 输出重定向到文件。我的配置如下:

log4j = {

    appenders {
        console name:'stdout'
        appender new DailyRollingFileAppender(
                name: 'audit',
                datePattern: "'.'yyyy-MM-dd",
                fileName: "${userHome}/${applicationName}.log",
                layout: pattern(conversionPattern: '%d [%t] %-5p %c{2} %x - %m%n')
        )
    }

    root {
        error 'stdout'          
    }

    error   '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.springframework',
            'org.hibernate',
            'net.sf.ehcache.hibernate',
            'StackTrace',
            'org.hibernate.type',
            'org.hibernate.SQL',
            'Hibernate',
            'org.hibernate.type.descriptor.sql.BasicBinder'

    debug   'grails.app' // set logging for all grails artifacts

    info    audit:
            'my.package.name', additivity: false        
}

不知何故,my.package.name 包的日志记录没有写入文件,而是写入stdout。当我将 audit 记录器放入我的 root 配置中时,日志记录会写入该文件,但其他类的日志记录也会写入此文件中,但我不这样做想要。

我只想将 my.package.name 的日志记录输出写入文件,所有其他日志记录都可以转到 stdout。我尝试过使用可加性,但我无法弄清楚。

最佳答案

我通过将 my.package.name 更改为 grails.app.my.package.name 解决了这个问题。

关于grails - Grails 中单个类的输出日志到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26604058/

相关文章:

spring - Spring Security Core Grails插件问题

html - 在 gsp 模板中渲染内容

grails - 约束中的导入域

Java Web 应用程序安全 : adding tokens to requests

javascript - 在模态窗口中使用 tinyMCE

java - log4j根据登录linux的人创建动态文件名

java - 未找到 com.models.entities.OrderEntity 类型的属性

java - Log4j 2 : How to enable ANSI colours on Windows console?

java - Log4j 找不到记录器的附加程序 (org.apache.hadoop.util.shell)

java - Log4j - org.hibernate.type 不起作用!