Logging API von Sun

Status
Nicht offen für weitere Antworten.
G

Gast

Gast
Hallo Zusammen,

ich habe mir mal die Logging-API von Sun angeschaut und für meine bescheidenen Logmeldungen ist diese sehr gut.

Im Großen und Ganzen funktioniert auch Alles. Ich verwende eine statische Klasse und erzeuge die Logmeldungen dann mit:

Code:
LOG.logger.log(Level.INFO "Text",e);

Code:
public class Log {
	
	public static final Logger logger = Logger.getLogger("Logging");
		
	/** Loggin wird aktiviert. */
	public static void startLogging() {
		
		try {
			FileHandler fh = new FileHandler("log.xml", true);
					
			logger.addHandler(fh);
			
		} catch (SecurityException e) {
			System.out.println("Logging konnte nicht gestartet werden.");
		} catch (IOException e) {
			System.out.println("Logging konnte nicht gestartet werden.");
		}
		
	}

}

Nun möchte ich natürlich, dass nicht nur die Logmeldungen des letzten Aufrufs, sondern alle Logmeldung gespeichert werden. In die API geschaut und für Filehandler einen neuen Konstruktor gefunden. Allerdings ergänzt er mein XML-Datei nicht, sondern hängt es nur an.

Wie bekomme ich das hin, dass die Knoten nur angehängt werden und nicht eine weiteres komplettes XML-Dokument bei jedem Programmstart neu erzeugt wird.

Danke und Gruß
 

NTB

Bekanntes Mitglied
Wenn es Dir darum geht, sowas mal selbst zu bauen, dann nützt Dir das folgende nicht.
Wenn es Dir aber tatsächlich einfach nur darum geht, ein Logging zu haben, dann rate ich Dir folgendes:

nutze Jakarta Commons Logging in Verbindung mit Log4j.
Ist gar nicht sooo viel Einarbeitungszeit und danach musst Du Dich echt um nichts mehr kümmern und kannst Dir alles so konfigurierenm, wie Du es haben willst. Auch brauchst Du Dich um solche Fragen nicht mehr kümmern.
Das ist auch kein Overkill.
 
G

Gast

Gast
Ist mir bekannt, aber warum sollte ich extra eine externe Bibliothek einbinden, wenn Sun schon eine Logging-Klasse liefert. Ich brauche nur noch das "korrekte" append.

Gruß
 
B

bygones

Gast
@NTB
das ist kein Argument fuer log4j bzw gegen den java logger. da du im grunde dich auch um nichts kuemmern musst und alles konfigurieren kannst.

Wenn du einfach logausgaben auf console, uebers netzwerk oder in eine text datei willst musst du bei dem java logger auch nichts machen... sobald du aber mehr willst bietet es dir eine einfach API an dies zu tun

Um das XML problem zu loesen fuer den java logger musst du dir deinen eigenen Handler schreiben der das richtig handhabt. Die vorhandnen handler reichen dafuer nicht aus
 
G

Gast

Gast
Also ich versuche mit mal an log4j und muss sagen, dass sieht sehr gut aus.

Wie kann ich am schnellsten die Zeitausgabe beim HTML-Format ändern. Muss ich das über das Patternlayout gehen oder gibt es eine andere Möglichkeit.

Danke schon mal.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben