Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.objectstyle.cayenne.access
Class QueryLogger  view QueryLogger download QueryLogger.java

java.lang.Object
  extended byorg.objectstyle.cayenne.access.QueryLogger

public class QueryLogger
extends java.lang.Object

A QueryLogger is intended to log special events during query executions. This includes generated SQL statements, result counts, connection events etc. It is a single consistent place for that kind of logging and should be used by all Cayenne classes that work with the database directly.

In many cases it is important to use this class as opposed to logging from the class that performs a particular operation, since QueryLogger will generate consistently formatted logs that are easy to analyze and turn on/off.

For more information see Cayenne User Guide.


Field Summary
static org.apache.log4j.Level DEFAULT_LOG_LEVEL
           
private static org.apache.log4j.Logger logObj
           
static int TRIM_VALUES_THRESHOLD
           
 
Constructor Summary
QueryLogger()
           
 
Method Summary
protected static void appendFormattedByte(java.lang.StringBuffer buf, byte byteValue)
          Prints a byte value to a StringBuffer as a double digit hex value.
static org.apache.log4j.Level getLoggingLevel()
          Returns current logging level.
static boolean isLoggable(org.apache.log4j.Level logLevel)
           
static void logCommitTransaction(org.apache.log4j.Level logLevel)
           
static void logConnect(org.apache.log4j.Level logLevel, java.lang.String dataSource)
          Logs database connection event using container data source.
static void logConnect(org.apache.log4j.Level logLevel, java.lang.String url, java.lang.String userName, java.lang.String password)
           
static void logConnectFailure(org.apache.log4j.Level logLevel, java.lang.Throwable th)
           
static void logConnectSuccess(org.apache.log4j.Level logLevel)
           
static void logPoolCreated(org.apache.log4j.Level logLevel, org.objectstyle.cayenne.conn.DataSourceInfo dsi)
          Logs database connection event.
static void logQuery(org.apache.log4j.Level logLevel, java.lang.String queryStr, java.util.List params)
           
static void logQuery(org.apache.log4j.Level logLevel, java.lang.String queryStr, java.util.List params, long time)
          Log query content using Log4J Category with "INFO" priority.
static void logQueryError(org.apache.log4j.Level logLevel, java.lang.Throwable th)
           
static void logQueryParameters(org.apache.log4j.Level logLevel, java.lang.String label, java.util.List parameters)
           
static void logQueryStart(org.apache.log4j.Level logLevel, int count)
           
static void logRollbackTransaction(org.apache.log4j.Level logLevel)
           
static void logSelectCount(org.apache.log4j.Level logLevel, int count)
           
static void logSelectCount(org.apache.log4j.Level logLevel, int count, long time)
           
static void logUpdateCount(org.apache.log4j.Level logLevel, int count)
           
static void setLoggingLevel(org.apache.log4j.Level level)
          Sets logging level.
static void sqlLiteralForObject(java.lang.StringBuffer buf, java.lang.Object anObject)
          Utility method that appends SQL literal for the specified object to the buffer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logObj

private static org.apache.log4j.Logger logObj

DEFAULT_LOG_LEVEL

public static final org.apache.log4j.Level DEFAULT_LOG_LEVEL

TRIM_VALUES_THRESHOLD

public static final int TRIM_VALUES_THRESHOLD
See Also:
Constant Field Values
Constructor Detail

QueryLogger

public QueryLogger()
Method Detail

sqlLiteralForObject

public static void sqlLiteralForObject(java.lang.StringBuffer buf,
                                       java.lang.Object anObject)
Utility method that appends SQL literal for the specified object to the buffer.

Note: this method is not intended to build SQL queries, rather this is used in logging routines only. In particular it will trim large values to avoid flooding the logs.


appendFormattedByte

protected static void appendFormattedByte(java.lang.StringBuffer buf,
                                          byte byteValue)
Prints a byte value to a StringBuffer as a double digit hex value.


getLoggingLevel

public static org.apache.log4j.Level getLoggingLevel()
Returns current logging level.


setLoggingLevel

public static void setLoggingLevel(org.apache.log4j.Level level)
Sets logging level.


logConnect

public static void logConnect(org.apache.log4j.Level logLevel,
                              java.lang.String dataSource)
Logs database connection event using container data source.


logConnect

public static void logConnect(org.apache.log4j.Level logLevel,
                              java.lang.String url,
                              java.lang.String userName,
                              java.lang.String password)

logPoolCreated

public static void logPoolCreated(org.apache.log4j.Level logLevel,
                                  org.objectstyle.cayenne.conn.DataSourceInfo dsi)
Logs database connection event.


logConnectSuccess

public static void logConnectSuccess(org.apache.log4j.Level logLevel)

logConnectFailure

public static void logConnectFailure(org.apache.log4j.Level logLevel,
                                     java.lang.Throwable th)

logQuery

public static void logQuery(org.apache.log4j.Level logLevel,
                            java.lang.String queryStr,
                            java.util.List params)

logQuery

public static void logQuery(org.apache.log4j.Level logLevel,
                            java.lang.String queryStr,
                            java.util.List params,
                            long time)
Log query content using Log4J Category with "INFO" priority.


logQueryParameters

public static void logQueryParameters(org.apache.log4j.Level logLevel,
                                      java.lang.String label,
                                      java.util.List parameters)

logSelectCount

public static void logSelectCount(org.apache.log4j.Level logLevel,
                                  int count)

logSelectCount

public static void logSelectCount(org.apache.log4j.Level logLevel,
                                  int count,
                                  long time)

logUpdateCount

public static void logUpdateCount(org.apache.log4j.Level logLevel,
                                  int count)

logCommitTransaction

public static void logCommitTransaction(org.apache.log4j.Level logLevel)

logRollbackTransaction

public static void logRollbackTransaction(org.apache.log4j.Level logLevel)

logQueryError

public static void logQueryError(org.apache.log4j.Level logLevel,
                                 java.lang.Throwable th)

logQueryStart

public static void logQueryStart(org.apache.log4j.Level logLevel,
                                 int count)

isLoggable

public static boolean isLoggable(org.apache.log4j.Level logLevel)