| 

.NET C# Java Javascript Exception

Log4J and Groovy

Dies ist das Archiv des ehemaligen Forums zum Thema Groovy, Grails, Griffon und Bean Scripting Framework, welches unter groovy-forum.de existierte. Die neue Adresse des Groovy-Forums ist: http://codekicker.de/fragen/themen/groovy.


Log4J and Groovy

whett - 31.08.2010 16:40
Ich versuche, das allersimpelste Groovy Programm mit Log4J zu loggen. Wenn ich das Programm direkt
mit dem Groovy Interpreter aufrufe, funktioniert das nicht. Weiss jemand Rat?

I defined the environment variables (in Ubuntu Linux)
export LOG4J_JAR=/usr/share/java/log4j-1.2.jar
export GROOVY_JAR=/opt/groovy/embeddable/groovy-all-1.6.5.jar
Based on [logging.apache.org] I use
the following Groovy class (in a file called MyApp.groovy):
import org.apache.log4j.*

public class MyApp {

	static Logger logger = Logger.getLogger(MyApp.class)

	public static void main(String[] args) {

	BasicConfigurator.configure()

	logger.info("Entering application.")
	println "Printing XXXXXXXXXXXXXXX"
	logger.info("Exiting application.")
   }
}
When I execute the Groovy program in a terminal window I
don't get any logging output, just:
> groovy -cp $LOG4J_JAR MyApp.groovy
Printing XXXXXXXXXXXXXXX
However, when I compile with groovyc and execute with java, then
I get the expected logging output:
> groovyc -cp $LOG4J_JAR MyApp.groovy
> java -cp .:$LOG4J_JAR:$GROOVY_JAR MyApp

0 [main] INFO MyApp  - Entering application.
Printing XXXXXXXXXXXXXXX
33 [main] INFO MyApp  - Exiting application.


Re: Log4J and Groovy

Wicki - 02.09.2010 16:03
Hallo,

mich interessiert das Problem ebenfalls. Unter Windows ist es der gleiche Effekt. Wenn Du Log4j und BasicConfigurator weglässt und stattdessen import java.util.logging.* sowie eine Zeichenkette als Parameter von getLogger nimmst, dann funktioniert es auch mit groovy.
Warum es mit Log4j nicht funktioniert möchte ich auch gern wissen.

Gruß Wicki


Re: Log4J and Groovy

whett - 03.09.2010 09:06
Danke für deinen Vorschlag. Ich glaube schon, dass Logging mit java.util.logging funktioniert; so stehts ja auch in der Groovy Dokumentation. Ich wollte aber speziell Log4J verwenden, da dieses System einen reichhaltigeren Funktionsumfang haben soll.


Re: Log4J and Groovy

Wicki - 04.09.2010 12:26
Noch ein Tip zu Deinem Problem:
Wenn ich eine Datei log4j.properties, in der die Console als Ausgabe definiert ist, bspw. ins aktuelle Verzeichnis stelle, dann funktioniert die Ausgabe. Der BasicConfigurator, der das ja nehme ich an eigentlich bewirken sollte, ist dann nicht mehr notwendig.

Gruß Wicki


Re: Log4J and Groovy

whett - 05.09.2010 11:03
Danke für den Tipp! Das war's - es läuft!


Stelle deine Groovy-Frage jetzt!


Diese Seite zeigt den Thread "Log4J and Groovy" der ehemaligen Webseite groovy-forum.de, welche durch einen Serverunfall zerstört wurde. codekicker.de hat viele Konversationen über die beliebte Programmiersprache Groovy und zugehörige Frameworks wie das Grails-Framework retten können.

Hast Du eine Frage zum Thema Groovy, Grails oder allgemein Java? Viele ehemalige groovy-forum.de Mitglieder beantworten dir auf codekicker.de deine Frage! Stelle jetzt eine Frage!

Viele weitere Diskussionen zu Grails und Groovy befinden sich auf der Threadübersicht des alten groovy-forum.de.