J'ai été très frustré à ce sujet.Grails log4J question de connexion sur Linux
Je suis en train de faire ce qui suit:
- journal toutes les applications liées à des journaux qui sont application.log INFO ou au-dessus
- Comprendre ce qui contrôle la configuration pour catalina.out
- journal ne WARN à catalina.out
Je cours mon serveur sur Ubuntu et j'ai la configuration par défaut pour tomcat qui inclut un répertoire de conf avec un logging.properties
. J'ai renommé ce fichier à l.p afin qu'il ne soit pas en conflit. (Je ne sais pas si cela est une bonne idée)
Dans mon fichier de configuration, j'ai:
def catalinaBase = System.properties.getProperty('catalina.base')
if (!catalinaBase) catalinaBase = '.' // just in case
def logDirectory = "${catalinaBase}${File.separator}logs"
println "Log Directory: ${logDirectory}"
log4j = {
appenders {
rollingFile name: 'applog', file: "${logDirectory}${File.separator}application.log", layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - %m%n'), maxFileSize: 1024
}
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'
warn 'org.mortbay.log'
info applog: 'grails.app'
root {
info 'applog'
}
}
En conséquence, je reçois trois journaux:
catalina.2011-01-17.log catalina.out localhost.2011-01-17.log
Le catalina.out a la sortie suivante:
Log Directory: /var/lib/tomcat6/logs
log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.PropertyUtils).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
log4j:ERROR WARNING: Exception occured configuring log4j logging: Cannot invoke org.apache.log4j.FileAppender.setFile - argument type mismatch
Je ne vois pas le application.log
dans le répertoire du fichier journal. Toute aide serait appréciée Je suis vraiment frustré à ce sujet.
Une chose, dans les fenêtres tout sortir à la console et le application.log est créé dans le répertoire .grails\1.3.5\projects\<appnmae>\tomcat
J'ai eu deux questions: 1) Je avais besoin d'un toString() 2) le changement logging.properties lp WASN pas assez. J'avais besoin de le sortir du répertoire conf. Merci @ Mike Axiak – Tihom
Mike (et Thom), j'ai testé cela avec Grails 1.3.7 et il semble bien fonctionner sans l'appel explicite '.toString()'. J'ai donc résolu ce bug. –