Das SQL-Logging lässt sich auch in einem eigenen Log-File ausgeben. Dafür müsste dann ein eigener Appender definiert, und im SQL-Logger referenziert werden:

log4j2 - Ausgabe des SQL-Logging in einem eigenen Log-File
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d %p [%c] - %m%n"/>
    </Console>
    <RollingFile name="Logfile" fileName="<Nuclos-Log-Verzeichnis>/server.log"
                filePattern="<Nuclos-Log-Verzeichnis>/server-%i.log" 
                append="true">
      <PatternLayout pattern="%d %p [%c] - %m%n"/>
      <Policies>
        <SizeBasedTriggeringPolicy size="5 MB"/>
                </Policies>
          <DefaultRolloverStrategy max="20"/>
    </RollingFile>
    <RollingFile name="SQLLog" fileName="<Nuclos-Log-Verzeichnis>/sql.log"
                filePattern="<Nuclos-Log-Verzeichnis>/sql-%i.log" 
                append="true">
      <PatternLayout pattern="%d %p [%c] - %m%n"/>
      <Policies>
        <SizeBasedTriggeringPolicy size="5 MB"/>
                </Policies>
          <DefaultRolloverStrategy max="20"/>
    </RollingFile>
  </Appenders>
  <Loggers>
    <Logger name="org.apache.log4j.xml" level="info"/>
    <Logger name="SQLLogger" level="debug"> 
      <AppenderRef ref="SQLLog"/>
    </Logger>
    <Root level="info">
      <AppenderRef ref="Console"/>
      <AppenderRef ref="Logfile"/>
    </Root>
  </Loggers>
</Configuration>
  • Keine Stichwörter