本文へスキップ

DB、SQL

データベース及びSQL性能データ収集のためのJavaエージェントの様々なオプションを案内します。DBCP、Hikari、Tomcatなど様々なDB接続プール(Connection Pool)情報の追跡及びSQL実行の詳細を記録できます。また、SQLパラメータ情報の記録、DB接続漏れの追跡など、性能最適化に欠かせない情報収集オプションを提供します。

  • dbcp_pool_enabled Boolean

    既定値 true

    JMXを使わず、DBCPのDB Connection情報を追跡するために使用します。

  • hikari_pool_enabled Boolean

    既定値false

    JMXを使わず、hikari poolのDB Connection情報を追跡するために使用します。

  • tomcat_ds_enabled Boolean

    既定値false

    JMXを使ってTomcat DB Connection Pool情報を追跡する機能を活性化します。

  • tomcat_pool_enabled Boolean

    既定値 true

    JMXを使わずにTomcat DB Connection Pool情報を追跡する機能を活性化します。

  • weblogic_ds_enabled Boolean

    既定値false

    JMXを使ってWeblogic DB Connection Pool情報を追跡する機能を活性化します。

  • weblogic_pool_enabled Boolean

    既定値 true

    JMXを使わずにWeblogic DB Connection Pool情報を追跡する機能を活性化します。

  • jeus_pool_enabled Boolean

    既定値 true

    JMXを使わずにJEUS DB Connection Pool情報を追跡する機能を活性化します。

  • profile_connection_open_enabled Boolean

    既定値 true

    トレース履歴にDBConnectionオープン情報を記録します。

  • trace_dbc_close_enabled Boolean Java Agent v2.2.3 or later

    既定値false

    profile_connection_open_enabledの値がtrueの場合のみ動作します。トレース履歴にDBConnectiondのクローズ情報を記録します。

    ノート

    Javaエージェント2.2.3バージョン前ではprofile_dbc_closeオプション名を使用します。

  • profile_sql_param_enabled Boolean

    既定値false

    トレース履歴にSQLパラメータ情報を記録するときに使用します。パラメータは、別途のセキュリティ キーを入力しないと照会できません。

    ノート
    • Javaエージェント2.2.2バージョン以前:セキュリティキーは、WASサーバー_${WHATAP_AGENT_HOME}/paramkey.txt_ファイル内に6桁で作成します。paramkey.txtファイルが存在しない場合は、ランダム値で自動生成します。

    • Javaエージェント2.2.2バージョン以降:セキュリティキーは、WASサーバー_${WHATAP_AGENT_HOME}/security.conf_ファイル内にparamkeyキー値を確認してください。security.confファイルが存在しない場合は、paramkeyキー値をWHATAPで自動生成します。

    • セキュリティキー設定ファイルの詳細については、次の文書を参照してください。

  • profile_sql_resource_enabled Boolean

    既定値false

    トレースからSQLを収集する場合、そのステップで使用したCPUとメモリ使用量を追跡します。

  • profile_update_count Boolean

    既定値false

    executeUpdate()メソッドを通じてSQL UPDATE文を実行した場合、UPDATE件数を収集します。

  • custom_pool_classes String

    pre-defineされない別途のConnection Poolを使用する場合は、そのクラス名を設定します。

  • ds_update_interval MiliSeconds

    既定値5000

    DB Connection情報のCount間隔を設定します。

  • profile_position_sql Boolean

    既定値false

    SQLを実行する時点のStackTraceを記録します。

  • profile_sql_param_length Int

    既定値40

    SQLパラメータの長さを設定します。

    ノート

    最大値は128です。その以上の値を入力してもパラメータは128まで保存します。

  • trace_dbc_leak_enabled Boolean

    既定値false

    DBConnection Leakを追跡する機能を有効にします。

    注意

    Connection Wrapperを使用してLeakを追跡するため、運営サービスに影響を与える可能性があります。必ずテストしてから適用してください。

  • trace_dbc_leak_fullstack_enabled Boolean

    既定値false

    DBConnection Leakが検出された場合、その時点のStackTraceを収集します。

    注意

    ピークタイム(Peak Time)にはなるべく適用しないでください。オプションを適用すると、CPU使用量が多少増加する可能性があります。問題解決用途にのみ一時的に適用することをお勧めします。

  • trace_sql_normalize_enabled Boolean

    既定値 true

    SQL文からリテラル部分を抽出し、SQL文を正規化する機能を活性化します。

  • profile_error_jdbc_fetch_max Int

    既定値10000

    SQL Fetch Count(ResultSet.next()呼び出し件数)が設定した値を超えると、TOO_MANY_RECORDSエラーで処理します。0に設定するとエラー処理されません。

  • profile_error_sql_time_max Int

    既定値30000

    SQLの実行時間が設定した値を超えると、SLOW_SQLエラーで処理されます。0に設定する場合、エラー処理は実行されません。

  • hook_connection_open_patterns String

    DB Connection Open時に呼び出すメソッドを登録します。事前設定していないConnection PoolのgetConnectionを登録するのが一般的です。

    Example
    hook_connection_open_patterns=mypool.ConPool.getConnection
  • hook_jdbc_con_classes String

    未登録のJDBC Connectionクラスを指定します。

    Example
    hook_jdbc_con_classes=mypool.ConPool
  • hook_jdbc_pstmt_classes String

    未登録のjdbc Prepared Statementクラスを設定します。生成者パラメータにSQL文字列が伝達される構造である必要があることに注意してください。

    Example
    hook_jdbc_pstmt_classes=org.apache.derby.impl.jdbc.EmbedPreparedStatement
  • hook_jdbc_cstmt_classes String

    未登録のjdbc Callable Statementクラスを設定します。

    Example
    hook_jdbc_cstmt_classes=org.apache.derby.impl.jdbc.EmbedCallableStatement
  • hook_jdbc_stmt_classes String

    未登録のJDBC Statementクラスを設定します。

    Example
    hook_jdbc_stmt_classes=org.apache.derby.impl.jdbc.EmbedStatement
  • hook_jdbc_rs_classes String

    未登録のJDBC ResultSetクラスを設定します。

    Example
    hook_jdbc_rs_classes=org.apache.derby.impl.jdbc.EmbedResultSet
  • hook_jdbc_wrapping_driver_patterns String

    DB2ドライバーのように難読化したJDBCドライバーは、hook_jdbc_xxオプションで直接BCIが難しいです。このような場合、Wrapper方式でSQLを追跡できます。このとき、Driver.connectを設定して追跡します。

  • debug_dbc_stack_enabled Boolean

    既定値false

    DB Connection時点のStackTraceをトレースに保存します。アプリケーションで使用するConnection Pool情報を取得するために使用します。

  • ignore_sql_hash_set String Java Agent v2.2.4 or later

    該当オプションに入力したSQLハッシュ値と一致するSQL文は無視するように設定できます。