log4j: Stacktrace landet nicht im Logfile

DarthShader

Erfahrenes Mitglied
Hallo,

ich möchte, dass der Stacktrace einer Exception mit im Log file landet, z.B. in einem solchen Fall:

Java:
try {
  // do something that throws the exception
}
catch ( RemoteLookupFailureException e ) {
	logger.error( "Unable to disptach data", e );
}

Die Nachricht "Unable to disptach data" landet wie erwartet im Log, allerdings sehe ich nichts von der Exception bzw. dem Throwable, doch eigentlich sollte doch dann der Stacktrace der Exception im Log stehen, oder?

Der entsprechende Appender sieht so aus:

XML:
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
	<param name="file" value="log/example.log" />
	<param name="maxFileSize" value="512KB" />
	<param name="maxBackupIndex" value="10" />
	<layout class="org.apache.log4j.PatternLayout">
		<param name="ConversionPattern" value="%d{ISO8601} %-5p [%t] %c: %m%n" />
	</layout>
</appender>


Hat jemand eine Idee, warum ich nichts von dem Stacktrace im Log sehe?


Über Eure Hilfe würde ich mich sehr freuen


Vielen Dank!
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

ich glaube Du hast die Problemstellung nicht ganz verstanden, ich möchte den log4j Aufruf mit der Exception als Parameter ergänzen, so wie hier beschrieben:

http://logging.apache.org/log4j/1.2...#error(java.lang.Object, java.lang.Throwable)

"Log a message object with the ERROR level including the stack trace of the Throwable t passed as parameter."


Du hast schon Recht eigentlich sollte der Stacktrace im logfile landen. Ich kann mir das nach deinen bisherigen Informationen nicht erklären, außer vielleicht wenn in der Exception kein Stacktrace vorhanden ist.
 
ich glaube Du hast die Problemstellung nicht ganz verstanden, ich möchte den log4j Aufruf mit der Exception als Parameter ergänzen, so wie hier beschrieben:
http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Category.html#error(java.lang.Object, java.lang.Throwable)
"Log a message object with the ERROR level including the stack trace of the Throwable t passed as parameter."

Moin,

da hast Du sicher recht, dass ich Deine Frage falsch verstanden habe!
Hättest Du es gleich so beschriebe, wie hier, hätte es das Missverständnis nicht gegeben und Du hättest Dir Deine negative Bewertung sparen können (!)

Im übrigen nutze ich log4j durch aus, und nur weil ich vlt. nicht jedes Detail kenne, behalte ich mit trotzdem vor, hier zu versuchen zu helfen ..... im Zweifel kann ich dann ja auch noch was dabei lernen!

BTW: das Loggen mit "e.getMessage()" klappt in meinen Anwendungen hervorragend, allerdings will ich auch nicht den gesamten StackTrace damit sehen .....

Gruß
Klaus

EDIT: vlt. schreibst Du beim nächsten Mal in Deine Frage mit rein, dass sich nur diejenigen schreiben dürfen, die sich zu 120% sicher sind ..... :-(
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück