Cosminexus 機能解説
デッドロックやスローダウンなどの障害が発生した場合,発行したSQLが障害の要因となった可能性があります。そこで,発行したSQLをログに出力することによって,障害要因の解析が容易になります。ログに出力されるSQLの情報を障害調査用SQLと呼びます。
障害調査用SQLは,次のタイミングで出力されます。
障害調査用SQLは,リソースアダプタの稼働ログ,および性能解析トレースに出力されます。
リソースアダプタの稼働ログでは,KDJE50080-Wのメッセージに出力されます。詳細については,マニュアル「Cosminexus メッセージ 1 KAWS/KDAL/KDJE編」を参照してください。
性能解析トレースでは,0x8C41のイベントIDに出力されます。詳細については,マニュアル「Cosminexus システム運用ガイド」を参照してください。
出力対象のコネクションでSQLを発行している場合,物理コネクションがSQLを保持しています。この物理コネクションが保持しているSQLが,障害調査用SQLとして出力されます。
表9-41 SQLを保持するAPIの一覧
クラス | メソッド |
---|---|
java.sql.Connection | prepareCall(String sql) |
prepareCall(String sql, int resultSetType, int resultSetConcurrency) | |
prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) | |
prepareStatement(String sql) | |
prepareStatement(String sql, int autoGeneratedKeys) | |
prepareStatement(String sql, int[] columnIndexes) | |
prepareStatement(String sql, int resultSetType, int resultSetConcurrency) | |
prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) | |
prepareStatement(String sql, String[] columnNames) | |
java.sql.Statement | addBatch(String sql) |
execute(String sql) | |
execute(String sql, int autoGeneratedKeys) | |
execute(String sql, int[] columnIndexes) | |
execute(String sql, String[] columnNames) | |
executeBatch()※1 | |
executeQuery(String sql) | |
executeUpdate(String sql) | |
executeUpdate(String sql, int autoGeneratedKeys) | |
executeUpdate(String sql, int[] columnIndexes) | |
executeUpdate(String sql, String[] columnNames) | |
java.sql.PreparedStatement | java.sql.Statementから継承した表示対象メソッド |
addBatch()※2 | |
execute()※2 | |
executeQuery()※2 | |
executeUpdate()※2 | |
java.sql.CallableStatement | java.sql.PreparedStatementから継承した表示対象メソッド |
注※1 executeBatch()メソッドを実行した場合は,最後にaddBatch(String sql)メソッド, addBatch()メソッドで加えられたSQLを物理コネクションに保持します。
注※2 addBatch()メソッド,execute()メソッド,executeQuery()メソッド,executeUpdate()メソッドを実行した場合,java.sql.ConnectionのprepareStatementメソッド,prepareCallメソッドの引数で与えられたSQLを物理コネクションに保持します。ただし,SQLのINパラメタプレースホルダー("?")は,置換しないで"?"のまま出力します。
障害調査用SQLの出力機能についての注意事項を説明します。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.