2016-07-13 4 views
0

Ich arbeite mit Java Web App {Servlet + JSP + Tomcat} und mit einem Protokoll-Management für die und Fehler Protokolle.Werden mehrere Protokolleigenschaften in Java Web App ausgeführt?

Jetzt möchte ich einige tatsächliche Datenprotokollfunktionalität mit verschiedenen Pfadnamen und Eigenschaftswerte hinzufügen. Wie kann ich dies in Java erreichen?

Bestehende Log Property

<Configuration status="ALL" name="Logger" packages=""> 
    <Properties> 
     <Property name="baseDir">D:\\Log\\</Property> 
    </Properties> 
    <Appenders> 
     <RollingFile name="RollingFile" append="true" fileName="${baseDir}/Log.log" filePattern="${baseDir}/$${date:yyyy-MM}/app-%d{yyyy-MM-dd-HH}-%i.log.gz"> 
      <PatternLayout pattern="%d{dd/MM/YYYY HH:mm:ss.SSS} [%t] %-5level %logger{36} %msg %n"/> 
      <Policies> 
       <TimeBasedTriggeringPolicy /> 
       <SizeBasedTriggeringPolicy size="30 MB" />   
      </Policies> 
      <!-- Create 5 archives for the same date if the log file size exceeds 30MB --> 
      <!-- Deletes the logs which are older than 60 days from the current date --> 
      <DefaultRolloverStrategy max="5"> 
       <Delete basePath="${baseDir}" maxDepth="2"> 
        <IfFileName glob="*/app-*.log.gz"> 
         <IfLastModified age="60d" /> 
        </IfFileName> 
       </Delete> 
      </DefaultRolloverStrategy> 
     </RollingFile> 
    </Appenders> 
    <Loggers> 
     <Root level="ALL"> 
     <AppenderRef ref="RollingFile"/> 
     </Root> 
    </Loggers> 
</Configuration> 

Java

public class Logj { 

static Logger objLogger = LogManager.getLogger(Logj.class); 

public static void doLog(Exception objException){ 
    objLogger.error("StackTrace - "+objException.fillInStackTrace()); 
} 

public static void doActivityLog(String strActivityMessage){ 
    objLogger.info(" Activity - "+strActivityMessage); 
} 

} 

I gleiche Funktionalität benötigen für die neue Anforderung ausführen

Wird es mehrere Eigenschaften hinzufügen unterstützen hinzufügen verschiedenen Verzeichnispfad und Hinzufügen mehrerer Appender mit dif andere Namen?

Vielen Dank im Voraus!

+0

Hey !! Irgendwelche Möglichkeiten, dies zu erreichen ?? – Bhat

Antwort

1

Sie müssen eine weitere Eigenschaft mit einem anderen Pfad im Eigenschaften-Tag hinzufügen, zusammen mit einem weiteren Rolling File Appender und beziehen Sie diesen Appender in der Root-Ebene, die zwei Protokolle erstellen wird.

+0

Ja! Es erstellt die Protokolldateien, das ist in Ordnung. Aber ich bin nur verwirrt, um die Daten in die neu erstellte Protokolldatei zu schreiben. Präsentieren Sie Fall 1. Schreiben Sie die gleichen Protokolle in den beiden Protokolldateien, ich möchte dies vermeiden und es sollte in spezifische Datei schreiben – Bhat

+1

für detaillierte Informationen verweisen Sie dies - http://logging.apache.org/log4j/2. x/manual/customconfig.html und http://logging.apache.org/log4j/2.x/manual/customloglevels.html –

Verwandte Themen