1

私はここで特にトリッキーな状況にあります。JBossで実行されるJavaベースのパッケージ化されたWebアプリケーションをサポートしています。このアプリケーションはパッケージ化されたアプリケーションであるため、実際にはコードにアクセスしたり、コードがどのように開発されたかを知りません。

私が見つけようとしているのは、JDBCのfetchSizeが何に設定されているかです。どこに設定されているのか、つまりResultSetレベルやStatementレベルなどでわかりません。

これが私がこれまでに試したことです:

1)Oracleからojdbc_g.jarファイルをダウンロードし、提供された指示に従って、JDBCドライバーのトレースを構成しようとしました。残念ながら、これらの手順では、このjarファイルをCLASSPATHに追加する必要があると記載されており、このアプリケーションのどこに設定されているのかわかりません。言うまでもなく、トレースファイルの出力を正常に取得できなかったため、このパスは実を結びませんでした。

2)WireSharkを使用してすべてのTNSパケットをキャプチャし、その方法で検出できるかどうかを確認しましたが、そのレベルでは、毎回渡される行数を実際に検出することはほぼ不可能であるため、これも無駄でした。そこには他にもたくさんの依存関係があり、私は自分が求めている情報を得ることができませんでした。

3)最後に試したのは、データベースへのSQL Net呼び出しのデータベース側トレースを構成することでしたが、これをsqlnet.oraファイルで行う必要があるのか​​、リスナーをトレースする必要があるのか​​わかりません。

これは私が今立ち往生しているところです。繰り返しますが、私がやりたいのは、アプリケーションのJDBC fetchSizeが何が設定されているかを調べることです(設定されている場合でも)。これがアプリケーションのパフォーマンスに影響を与える可能性があることを知っているので、それを見つけたいと思います。

任意のガイダンスをいただければ幸いです。

ありがとう。

4

1 に答える 1

0

jarファイルを解凍し、クラスファイルでfetchSizeをgreppingしてみてください。これにより、クラスファイルが作成されます。次に、逆アセンブルまたは逆コンパイルするか、デバッグして、設定内容を確認します。

于 2012-06-07T18:11:41.103 に答える