Thanks to visit codestin.com
Credit goes to github.com

Skip to content

log4jdbc is a Java JDBC driver that can log SQL and/or JDBC calls (and optionally SQL timing information) for other JDBC drivers using the Simple Logging Facade For Java (SLF4J) logging system.

Notifications You must be signed in to change notification settings

semaifour/log4jdbc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

#=======================================

  • DriverSpy2 to register itself as the main driver that accepts connections from other JDBC drivers
  • Users don't have to manually load the DriverSpy2 class and prepend jdbc:log4 to their DB URLs

Usage

#=======================================

  1. Include the log4jdbc.jar to the application's classpath (use 'mvn package' to build the jar from source code).

  2. Set log4jdbc as the main JDBC driver using Java/JVM arguments: -Djdbc.drivers=net.sf.log4jdbc.DriverSpy2

  3. The following drivers are automatically monitored: UNLESS: -Dlog4jdbc.auto.load.popular.drivers=false

    • oracle.jdbc.driver.OracleDriver
    • com.sybase.jdbc2.jdbc.SybDriver
    • net.sourceforge.jtds.jdbc.Driver
    • com.microsoft.jdbc.sqlserver.SQLServerDriver
    • com.microsoft.sqlserver.jdbc.SQLServerDriver
    • weblogic.jdbc.sqlserver.SQLServerDriver
    • com.informix.jdbc.IfxDriver
    • org.apache.derby.jdbc.ClientDriver
    • org.apache.derby.jdbc.EmbeddedDriver
    • com.mysql.jdbc.Driver
    • org.postgresql.Driver
    • org.hsqldb.jdbcDriver
    • org.h2.Driver

To monitor specific drivers or drivers that are not automatically monitored, do append as below -Dlog4jdbc.drivers=net.sf.log4jdbc.DriverSpy2[,...]

  1. Include the slf4j-api.jar and the appropriate SLF4J binding as required by the application's main logging framework (i.e. slf4j-log4j12.jar, slf4j-jdk14.jar) in the classpath.

  2. Include the appropriate log properties file (see sample log4j.properties file below).

Sample log4j.properties file for log4j framework

#=======================================

log4j.rootLogger=ERROR log4j.logger.com.sample.db.app=INFO,console

log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c] - %m%n

Turn debugging ON if needed

log4j.debug=false

JDBC API layer call logging settings

#========================================

Log all jdbc calls

log4j.logger.jdbc.audit=INFO,jdbc log4j.additivity.jdbc.audit=false

Log sql execution

log4j.logger.jdbc.sqlonly=INFO,sql log4j.additivity.jdbc.sqlonly=false

Log sql execution details

log4j.logger.jdbc.sqltiming=INFO,sqltiming,console log4j.additivity.jdbc.sqltiming=false

Log connection details

log4j.logger.jdbc.connection=INFO,connection log4j.additivity.jdbc.connection=false

Log only jdbc resultset calls

log4j.logger.jdbc.resultset=INFO,jdbc log4j.additivity.jdbc.resultset=false

JDBC API appender settings - optional

#========================================

Appender only for sql logging

log4j.appender.sql=org.apache.log4j.FileAppender log4j.appender.sql.File=/Library/Tomcat/logs/sql.log log4j.appender.sql.Append=true log4j.appender.sql.layout=org.apache.log4j.PatternLayout log4j.appender.sql.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c] - %m%n

Appender only for sqltiming logging

log4j.appender.sqltiming=org.apache.log4j.FileAppender log4j.appender.sqltiming.File=/Library/Tomcat/logs/sqltiming.log log4j.appender.sqltiming.Append=true log4j.appender.sqltiming.layout=org.apache.log4j.PatternLayout log4j.appender.sqltiming.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c] - %m%n

Appender for all jdbc api call logging

log4j.appender.jdbc=org.apache.log4j.FileAppender log4j.appender.jdbc.File=/Library/Tomcat/logs/jdbc.log log4j.appender.jdbc.Append=true log4j.appender.jdbc.layout=org.apache.log4j.PatternLayout log4j.appender.jdbc.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c] - %m%n

Appender only for connection logging

log4j.appender.connection=org.apache.log4j.FileAppender log4j.appender.connection.File=/Library/Tomcat/logs/connection.log log4j.appender.connection.Append=true log4j.appender.connection.layout=org.apache.log4j.PatternLayout log4j.appender.connection.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c] - %m%n

About

log4jdbc is a Java JDBC driver that can log SQL and/or JDBC calls (and optionally SQL timing information) for other JDBC drivers using the Simple Logging Facade For Java (SLF4J) logging system.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 97.6%
  • Batchfile 1.1%
  • Other 1.3%