2013-11-02 3 views
0

Единственный способ, которым я могу получить регистрацию работать в моей службе, чтобы добавить это к моей службы:Grails протоколирование службы не инициализирует

class MyService { 
def log = LogFactory.getLog(getClass()) 
... 

Мои настройки log4j в Config.groovy:

log4j = { 

    PatternLayout patternLayout = new PatternLayout("%d [%t] %-5p %c %x - %m%n") 


    debug 'grails.app.controllers', 
      'grails.app.controller', 
      'grails.app.domain', 
      'grails.app.service', 
      'grails.app.filters', 
      'com.mycompany' 
//   'org.springframework.security' 
      'org.hibernate.SQL' 

    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' 

    appenders { 
     appender new org.apache.log4j.ConsoleAppender(name: "console", 
       threshold: org.apache.log4j.Level.DEBUG, 
       layout: patternLayout 
     ) 
    } 
    root { 
     error 'stdout' 
     additivity = true 
    } 
} 

Я бы подумал, что регистрация будет работать в сервисе без необходимости добавлять def log ... вверху.

ответ

3

grails.app.service должно быть grails.app.services. Это изменилось в версии 2.0.

Вы можете легко узнать имя регистратора в артефакте, добавив

println log.name 

методы испытаний и называя его.

+1

Да, множество услуг исправлено все. – spock99

Смежные вопросы