Frage zum Einsatz eines loggers

Millman

Mitglied
Hallo zusammen,

ich möchte gerne einen logger in meiner Webapplikation einsetzen.

Sehe ich es richtig, dass ich in jeder meiner Klassen einen neuen Logger erzeugen und instanziieren muss?
Nach dem Schema:

Code:
public class LoggingA {
static Logger logger;
Handler file_handler;
Formatter klartext;
// ------------- Konstruktor für Klasse LoggingA ----------------
public LoggingA() throws IOException {
// Logger erzeugen
logger = Logger.getLogger("LoggingA");
// File Handler erzeugen
file_handler = new FileHandler("LoggingA.txt");
// Formatter erzeugen
klartext = new SimpleFormatter();
file_handler.setFormatter(klartext);
logger.addHandler(file_handler);
}
 

Marco13

Top Contributor
Man kann theoretisch auch nur einen globalen Logger verwenden, aber dann gehen viele Vorteile des eigentlichen Loggings verloren. Üblich ist schon eine Logger-Instanz pro Klasse, allerdings sollte man das Erzeugen des Loggers IMHO nicht in den Konstruktor schreiben, sondern vielleicht eher in eine statische Utility-Methode (wenn's aufwändiger ist).
 

Siassei

Bekanntes Mitglied
Böses Faul. Analysiere deinen Code ein mal. Du erzeugst bei jeder Instanz deiner Klasse einen neuen Logger und weist diesem einer static-Variablen zu!

In Java geht man im allg. so vor, wie Marco das bereits geschieldert hat. Benutzt du Log4J oder eine andere Bibliothek? Evtl. die mit gelieferte Logging-API?

In einer Config-Datei steuerst du normalerweiße, wie die einzelne Logger behandelt werden. Bei Log4J ist das z.B. eine XML oder Property Datei. In dieser kann man z.B. festlegen, dass alle Logger des Paket foo.bar.* in die Datei log1exapmple.log ausgegeben werden. Zudem lassen sich Informationen wie, Timestamp, Thread-Name, .... steuern.
Aber das sollte nicht in deinem Code passieren.

Java:
public class LoggingExample1 {

  private static final Logger log = Logger.getLogger(LoggingExample1.class);
}

// Oder, falls aufwändiger
public class LoggingExample2 {

  private static Logger log;

  // Wird spätestens beim ersten Zugriff auf die Klasse aufgerufen.
  // --> vor new oder LoggingExample2.staticMethod...()
  static {
    Config cg = Config.load(.....);
    cg.configure;
    log = Logger.getLogger(LoggingExample2);
    log.setXYZ(.....)
  }
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
pkm Frage zu karaf-Tutorium zum Programmieren von Service und Consumer Allgemeines EE 3
A Frage Umfang JEE Allgemeines EE 5
J Frage zu Dependecy Injection Allgemeines EE 10
pkm Frage zu Get- bzw. Postrequest in JSP. Allgemeines EE 1
pkm Frage wegen AJAX-Zugriff auf ein Servlet Allgemeines EE 1
Tort-E Grundsätzliche Frage -> Lokale Installation Allgemeines EE 2
E Frage zu Wildfly und Hibernate OGM Allgemeines EE 0
S Frage zu Jersey + Hibernate Allgemeines EE 1
Shams Frage zu Dowload von JAVA SDK Allgemeines EE 5
J Frage zur Projektarchitektur Allgemeines EE 2
E Generelle Frage zu CDI mit JBoss AS 7.1.1 and Jave EE 6 Allgemeines EE 4
NoXiD JSF Frage zu Datenstruktur Allgemeines EE 2
S EJB Frage Allgemeines EE 10
2 Frage zu JNDI Allgemeines EE 13
E Entities im JSF/GUI-Layer, Frage zu 3-Layer-Model Allgemeines EE 2
G Allgemeine Frage zu Authentifizierung mittels Servlet API Allgemeines EE 2
B Wicket, Hibernate, H2 memDB Anfänger Frage Allgemeines EE 2
G Architektur- Frage Allgemeines EE 5
P Frage zu Java EE Design Patterns Allgemeines EE 3
M Frage zu Einloggen/Ausloggen - Features Allgemeines EE 4
T Einstieg JEE: Frage für Frage bis zum Erfolg :-) Allgemeines EE 28
P Allg. Frage Eclipse EE & Xml Allgemeines EE 2
D Frage zum Statefull Session Beans Lebenszyklus Allgemeines EE 3
S JSTL / Spring Webflow Frage Allgemeines EE 2
S jsp include Frage Allgemeines EE 2
B Tomcat Manager - .war Datei hochladen. Einfache Frage Allgemeines EE 5
S Frage zu Taglib und Expression Language Allgemeines EE 5
B J2EE Frage Allgemeines EE 4
F Verständnis-Frage zu den vielen Frameworks Allgemeines EE 17
D Frage zum Verlassen eine JSF-Eingabefeldes Allgemeines EE 6
D Frage zu DataModel, DataModelSelection und Seam Allgemeines EE 3
H Frage zu JSF Allgemeines EE 5
G Generelle Java EE Frage zum Einstieg Allgemeines EE 3
M Allgemeine Frage zu Java Logging (JLA, Log4J) Allgemeines EE 5
N JSF - Frage zu Managed Beans und DataTable Allgemeines EE 4
S Frage zu JSF und MyFaces Komponenten: Teilbereiche neu laden Allgemeines EE 2
P Eine Frage zum Thema Applikationsaufbau Allgemeines EE 3
F [Hallo] Frage zu Hibernate Mapping und Vererbung Allgemeines EE 3
S allgemeine Frage zu Spring (AOP) Allgemeines EE 2
J Frage zu Jboss Allgemeines EE 7
G Anfänger-Frage: EJB Programmierung bzw. Konfiguration Allgemeines EE 6
M jsf Design Frage Allgemeines EE 3
J jsp:useBean Frage Allgemeines EE 4
megachucky JPA - Query.getResultList() Frage Allgemeines EE 3
M Hibernate Criteria frage Allgemeines EE 2
G Allgemeine Java Web Service Frage Allgemeines EE 4
1 Frage zu Struts und findForward Allgemeines EE 4
D Frage SSL und nicht SSL Allgemeines EE 3
E Warum geht das nicht (EL Frage)? Allgemeines EE 3
T Design/Performance-Frage beim servlet (static oder nicht) Allgemeines EE 35
E forEach Loop EL - Frage Allgemeines EE 2
G Design Frage Allgemeines EE 2
A EJB-Design Frage Allgemeines EE 2
F Frage zur guten Architektur einer WebApp Allgemeines EE 2
thE_29 Allg. Frage zu JSP/Servlets Allgemeines EE 2
flashfactor Frage zu Session-Lebensdauer Allgemeines EE 3
A Frage zu Servlets Allgemeines EE 5
P generelle Frage zum RequestDispatcher Allgemeines EE 2
H Glassfish - Open Source Lizenz für den kommerziellen produktiven Einsatz? Allgemeines EE 2
T Probleme beim Einsatz von J2EE / JBoss Allgemeines EE 4
B Online Status eines Benutzers abrufen Allgemeines EE 27
WetWer Aufbau eines JSP EE Projekts Allgemeines EE 4
O JSF Login mit Hilfe eines Sharepoint 2013 Users Allgemeines EE 4
R Mehrere Bilder gleichzeitig bzw. dynamisch eines Objektes speichern Allgemeines EE 2
R JPA Problem beim Speichern eines Users Allgemeines EE 2
S Aufruf eines EJBs aus einer nativen Java-Applikation Allgemeines EE 1
O JBoss und die Einbindung eines externen JAR Allgemeines EE 10
DStrohma Innerhalb eines Webservices die reine SOAP Nachricht ausgaben Allgemeines EE 2
A Probleme bei der Einbindung eines Liferay Portalserver (Glassfish) Allgemeines EE 7
S Validierung eines Datums Allgemeines EE 3
TheDarkRose Überlegungen zur Modularität eines Projekts und Pluginartige Programmierung Allgemeines EE 2
G Rollen eines Benutzers ermitteln Allgemeines EE 16
M Wie zeige ich Attribute eines Objekts innerhalb einer JSP an Allgemeines EE 2
isowiz Positionierung innerhalb eines <h:commandLink> Allgemeines EE 7
D Controller-Klassen eines Servlets testen mit JUnit Allgemeines EE 3
S Struts - Direktaufruf eines URL verhindern Allgemeines EE 11
J init-Methode eines Servlet ausführen ohne vorherigen request Allgemeines EE 2
G Servlet beim Absenden eines Formulars aufrufen Allgemeines EE 11
M Builden eines Web Service Projekts scheitert Allgemeines EE 6
B Ursprung eines Requests Allgemeines EE 5
F Aufbau eines Content managment systems Allgemeines EE 8
M Pfad eines Bildes angeben? Allgemeines EE 1

Ähnliche Java Themen

Neue Themen


Oben