2011-12-23 16 views
6

Sto cercando di usare log4j dal mio src/classe Groovy in graal progetto come questo:Utilizzando log4j da file src/groove

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") 
    } 
} 

In Config.groovy ho le seguenti impostazioni: 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"] 
    ... 
} 

Ma il mio registro/importer.log è sempre vuoto. Cosa c'è di sbagliato nel mio codice/configurazione?

io sarò contento di tutto il consiglio, link ecc

risposta

2

Mi chiedo se avete i vostri parametri fuori uso.

Questo funziona per me:

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 
} 

Con il vostro stesso codice.