Logging bei einem WebApplication

PollerJava

Top Contributor
Hallo,

ich habe jetzt meine Web- Applikation ohne Logging fertiggestellt (hab bis jetzt mit System.out.println gearbeitet) - ich verwende übrigends Spring 3.0.

Ich möchte jetzt mit AOP das Logging implementieren - das mit AOP ist klar -> anhand von Pointcuts einfach Aspects einweben - also bevor/nach eine Methode aufgerufen wird mach ich da logging.

Meine Frage wäre jetzt, wo ich das hinschreiben - wo soll den bei einer Web- Applikation das/die Logfiles liegen - ich befinde mich ja innerhalb einer JAR und da kann ich ja schlecht ein Logfile schreiben.

Wie ist das bei euren Webapplikationen - wie macht ihr das?
 
In den deploy Ordner der Webapplikation zu schreiben wäre onehin problematisch, da dann nach jedem deployvorgang alle logs wieder weg wären.

Ich mache das so das ich mir eine ordnerstruktur für die webapplikation angelegt habe.

c:\webapplikation\log für logfiles
c:\webapplikation\upload\gfx für hochgeladene grafiken
c:\webapplikation\user\*username* für die benutzerverzeichnisse

usw.

grüße,
krazun
 
Hi,

in der Regel bietet der Container, in welchem die WebApplikation läuft, doch einen log-Ordner. Dort sammelt man in der Regel die Log-Files (für jede App einzeln), teilweise sogar unterteilt in Prio.

Beispiel mit Tomcat:
\${catalina.base}\logs\project_a.log
\${catalina.base}\logs\project_a-errors.log
\${catalina.base}\logs\project_b.log
\${catalina.base}\logs\project_c.log
\${catalina.base}\logs\...

Die "normalen" Logfiles des Tomcats in diesem Beispiel sind dort auch zu finden. Ebenso greifen in der Regel Standard-Mechanismen zur Überwachung auf den Ordner zu und können den leicht auswerten.

Vorteil: Logfiles bleiben nach dem Re-Deploy erhalten und sind zentral gehalten.
 

Zurück
Oben