jp.littlesoft.sql.logger
クラス SQLTimeLogger

java.lang.Object
  上位を拡張 jp.littlesoft.sql.logger.SQLTimeLogger
すべての実装されたインタフェース:
Serializable

public final class SQLTimeLogger
extends Object
implements Serializable

実行されたSQL文の実行時間のロギングを行うクラス。

ログの出力自体は、Log4j管理下のLoggerクラスに委譲されます。
本クラスは、実行されたSQL文の実行時間をログとして記録します。
標準で、jp.littlesoft.sql.SQLDataResolver, jp.littlesoft.sql.UpdateSQL, jp.littlesoft.sql.SQLTableで行われるSQL処理に組み込まれています。
ログの出力レベルをDEBUGに指定すると出力されます。

log4j.xml設定ファイルにて、更新用ログのみ/照会用ログのみ/更新用ログ+照会用ログ などの出力制御ができます。

 設定例:
 
  <!-- 更新用ログ+照会用ログ -->
  <logger name="jp.littlesoft.sql.logger.SQLTimeLogger">
      <level value ="DEBUG" />
  </logger>
 
  <!-- 更新用ログのみ -->
  <logger name="jp.littlesoft.sql.logger.SQLTimeLogger.update">
      <level value ="DEBUG" />
  </logger>
  
  <!-- 照会用ログのみ -->
  <logger name="jp.littlesoft.sql.logger.SQLTimeLogger.query">
      <level value ="DEBUG" />
  </logger>
  
 出力例:
 
  2004-12-24 11:28:21,750,Provide,clientId,mypackege.EmployeeDBAction,tblEmployee,407
  2004-12-24 11:29:05,468,ResolveChanges,clientId,mypackege.EmployeeDBAction,tblEmployee,31
  
  (日時,時刻のミリ秒,Provide/ResolveChanges/ExecuteUpdate/ExecuteQueryの種別,クライアント識別子,
   DBActionのクラス名,SQLTable名,処理時間(ミリ秒))
 

バージョン:
1.3.0
作成者:
LittleSoft Corporation
関連項目:
直列化された形式

フィールドの概要
static String EXECUTE_QUERY
          ExecuteUpdateを意味する文字列定数です。
static String EXECUTE_UPDATE
          ExecuteUpdateを意味する文字列定数です。
static String PROVIDE
          Provideを意味する文字列定数です。
static String RESOLVE_CHANGES
          ResolveChangesを意味する文字列定数です。
 
メソッドの概要
static boolean isQueryDebugEnabled()
          データ照会用ログが出力可能かどうか調べます。
static boolean isUpdateDebugEnabled()
          データ更新用ログが出力可能かどうか調べます。
static void logForQuery(String kind, String clientId, String dbActionName, String tableName, long executeTime)
          照会時間のログを出力します。
static void logForUpdate(String kind, String clientId, String dbActionName, String tableName, long executeTime)
          更新時間のログを出力します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

PROVIDE

public static final transient String PROVIDE
Provideを意味する文字列定数です。

関連項目:
定数フィールド値

RESOLVE_CHANGES

public static final transient String RESOLVE_CHANGES
ResolveChangesを意味する文字列定数です。

関連項目:
定数フィールド値

EXECUTE_UPDATE

public static final transient String EXECUTE_UPDATE
ExecuteUpdateを意味する文字列定数です。

関連項目:
定数フィールド値

EXECUTE_QUERY

public static final transient String EXECUTE_QUERY
ExecuteUpdateを意味する文字列定数です。

関連項目:
定数フィールド値
メソッドの詳細

logForUpdate

public static void logForUpdate(String kind,
                                String clientId,
                                String dbActionName,
                                String tableName,
                                long executeTime)
更新時間のログを出力します。

注意: ログレベルが、DEBUG以外の時は出力は無視されます。

パラメータ:
kind - 種別("ResolveChanges", "ExecuteUpdate", "ExecuteQuery"のいずれか)
clientId - 処理要求元を判別するための識別子.(null指定可)
dbActionName - SQLを実行したDBAction名
tableName - SQLを実行したSQLTable名
executeTime - 実行時間(単位:ミリ秒)

logForQuery

public static void logForQuery(String kind,
                               String clientId,
                               String dbActionName,
                               String tableName,
                               long executeTime)
照会時間のログを出力します。

注意: ログレベルが、DEBUG以外の時は出力は無視されます。

パラメータ:
kind - 種別(="Provide")
clientId - 処理要求元を判別するための識別子.(null指定可)
dbActionName - SQLを実行したDBAction名
tableName - SQLを実行したSQLTable名
executeTime - 実行時間(単位:ミリ秒)

isQueryDebugEnabled

public static boolean isQueryDebugEnabled()
データ照会用ログが出力可能かどうか調べます。

戻り値:
True:出力可、False:出力不可

isUpdateDebugEnabled

public static boolean isUpdateDebugEnabled()
データ更新用ログが出力可能かどうか調べます。

戻り値:
True:出力可、False:出力不可


Copyright (C) 2006-2012 LittleSoft Corporation. All Rights Reserved.