2011-12-23 16 views
6

Próbuję użyć log4j z mojego src/groove klasy w Grails wystawać tak:Korzystanie log4j z src/plików porywające

package com.brand.vh.importer.command 

import org.apache.log4j.Logger 

class NewOrder extends CommandAbstract { 
    private final Logger log = Logger.getLogger(getClass()) 

    NewOrder() { 
     log.debug("NewOrder constructor called") 
    } 
} 

W Config.groovy Mam następujące ustawienia Log4J:

.... 
// log4j configuration 
import org.apache.log4j.DailyRollingFileAppender 
log4j = { 
    appenders { 
     appender new DailyRollingFileAppender(
      name: "fileAppenderImporter", 
      file: "log/importer.log", 
      datePattern: "'.'yyyy-MM-dd", 
      layout: pattern(
         conversionPattern: 
         "%d{ISO8601} [%p][%X{IP}](%F:%M:%L):%n%m%n%n" 
        ) 
     ) 
     .... 
    } 
    ... 
    debug additivity: false, 
     fileAppenderImporter: ["com.brand.vh.importer"] 
    ... 
} 

Ale mój log/importer.log jest zawsze pusty. Co jest nie tak z moim kodem/config?

będę zadowolony wszelkie rady, linki itp

Odpowiedz

2

Zastanawiam się, czy masz swoje parametry w porządku.

Działa to dla mnie:

log4j = { 
    appenders { 
     console name: 'stdout', layout: pattern(conversionPattern: '%d [%t] %-5p [%c(%F:%L)] - %m%n') 
     appender new DailyRollingFileAppender(
       name: "fileAppenderImporter", 
       file: "log/importer.log", 
       datePattern: "'.'yyyy-MM-dd", 
       layout: pattern(
         conversionPattern: 
         "%d{ISO8601} [%p][%X{IP}](%F:%M:%L):%n%m%n%n" 
       ) 
     ) 
    } 

    root { 
     debug 'stdout' 
     info 'stdout' 
     additivity = false 
    } 

    debug fileAppenderImporter: ['com.brand.vh.importer'], additivity: false 
} 

Dzięki swojej samym kodem.