![]() ![]() ![]() ![]() |
BEA WebLogic JDBC Spy は BEA WebLogic Type 4 JDBC ドライバをラップするラッパーです。アプリケーションによって発行された JDBC 呼び出しに関する詳細情報をログに記録して、その呼び出しをラップされた WebLogic Type 4 JDBC ドライバに渡します。このログの情報は、アプリケーションの問題を解決するために使用できます。WebLogic JDBC Spy を使用する利点は以下のとおりです。
注意 : | WebLogic JDBC Spy は標準の JDBC API のみを実装します。他の WebLogic Type 4 JDBC ドライバで実装される JDBC 拡張機能は実装していません。アプリケーションで JDBC 拡張機能を使用する場合、WebLogic JDBC Spy を使用するとエラーが発生するおそれがあります。 |
WebLogic Server で WebLogic JDBC Spy を使用するには、JDBC データ ソース コンフィグレーションの URL の末尾に JDBC Spy 属性を追加します。データ ソースのコンフィグレーションを修正するには、次の手順に従います。
Administration Console の [ドメイン コンフィグレーション|データ ソース] タブで、spy を有効にする特定のデータ ソースを選択します。[接続プール] タブを開き、既存の URL の最後に spyAttributes を追加します。次に例を示します。
jdbc:bea:DB2://db2host:50000;spyAttributes=(log=(file)d:\spy.log;timestamp=yes)
または、datasource_name-jdbc.xml ファイルで、JDBC データ ソースのエントリの URL を更新します。次に例を示します。
<jdbc-driver-params>
<url>jdbc:bea:db2://bangpcdb2:50000;spyAttributes=(log=(file)db2-spy.out;load=weblogic.jdbc.db2.DB2Driver;timestamp=yes)
</url>
<driver-name>weblogic.jdbc.db2.DB2Driver</driver-name>
<properties>
<property>
<name>user</name>
<value>john</value>
</property>
<property>
<name>portNumber</name>
<value>50000</value>
</property>
<property>
<name>databaseName</name>
<value>wls</value>
</property>
<property>
<name>serverName</name>
<value>db2host</value>
</property>
<property>
<name>batchPerformanceWorkaround</name>
<value>true</value>
</property>
</properties>
<password-encrypted>{3DES}hqKps8ozo98=</password-encrypted>
</jdbc-driver-params>
表 D-1 に、WebLogic JDBC Spy のコンフィグレーションで使用できるオプションを示します。これらのオプションを、XA ドライバの場合は spyAttributes プロパティの属性として、非 XA ドライバの場合は URL 内の属性として使用します。
上付きの数字は注意事項があることを示します。例の下にある「注意」で該当するテキストを参照してください。
All rights reserved.1
registerDriver:driver[className=weblogic.jdbcspy.SpyDriver,
context=null,weblogic.jdbcspy.SpyDriver@1ec49f]2
*Driver.connect(jdbc:spy:{jdbc:bea:sqlserver://QANT:4003;
databaseName=Test;})
trying driver[className=weblogic.jdbcspy.SpyDriver,
context=null,weblogic.jdbcspy.SpyDriver@1ec49f]3
spy>> Driver.connect(String url, Properties info)
spy>> url = jdbc:spy:{jdbc:bea:sqlserver://QANT:4003;databaseName=Test;
OSUser=qauser;OSPassword=null12}
spy>> info = {password=tiger, user=scott}
spy>> OK (Connection[1])4
getConnection returning driver[className=weblogic.jdbcspy.SpyDriver,
context=null,weblogic.jdbcspy.SpyDriver@1ec49f]5
spy>> Connection[1].getWarnings()
spy>> OK6
spy>> Connection[1].createStatement
spy>> OK (Statement[1])7
spy>> Statement[1].executeQuery(String sql)
spy>> sql = select empno,ename,job from emp where empno=7369
spy>> OK (ResultSet[1])8
spy>> ResultSet[1].getMetaData()
spy>> OK (ResultSetMetaData[1])9
spy>> ResultSetMetaData[1].getColumnCount()
spy>> OK (3)10
spy>> ResultSetMetaData[1].getColumnLabel(int column)
spy>> column = 1
spy>> OK (EMPNO)11
spy>> ResultSetMetaData[1].getColumnLabel(int column)
spy>> column = 2
spy>> OK (ENAME)12
spy>> ResultSetMetaData[1].getColumnLabel(int column)
spy>> column = 3
spy>> OK (JOB)13
spy>> ResultSet[1].next()
spy>> OK (true)14
spy>> ResultSet[1].getString(int columnIndex)
spy>> columnIndex = 1
spy>> OK (7369)15
spy>> ResultSet[1].getString(int columnIndex)
spy>> columnIndex = 2
spy>> OK (SMITH)16
spy>> ResultSet[1].getString(int columnIndex)
spy>> columnIndex = 3
spy>> OK (CLERK)17
spy>> ResultSet[1].next()
spy>> OK (false)18
spy>> ResultSet[1].close()
spy>> OK19
spy>> Connection[1].close()
spy>> OK20
1 BEA WebLogic JDBC Spy は登録されています。spy>> プレフィックスは、この行が BEA WebLogic JDBC Spy によってログに記録されたことを表します。
2 JDBC ドライバ マネージャは JDBC ドライバが登録されるたびにメッセージをログに記録します。
3 これは JDBC ドライバ マネージャのログです。JDBC アプリケーションが接続するたびにメッセージをログに記録します。
4 アプリケーションは指定された URL で接続しています。プロパティを使用してユーザ名とパスワードが指定されます。
5 これは JDBC ドライバ マネージャのログです。正常な接続が行われるたびにメッセージをログに記録します。
6 アプリケーションは警告があるかどうかを確認します。この例では、警告はありません。
7、8 「select empno,ename,job from emp where empno=7369」という文が作成されています。
14、15、16、17 最初の行とそのデータが取得されています。
18 アプリケーションは 2 番目の行を取得しようとしていますが、データベースはこのクエリに対して 1 行しか返しませんでした。
![]() ![]() ![]() |