0

中央ビルドサーバーをセットアップ中です。サーバーは、すべての環境にデプロイされる公式のビルドアーティファクトを生成する責任があります。アプリケーションの1つには、データベースに書き込むビルドステップがあります。デプロイ時に、このビルドステップを適切な環境で実行する必要があります。このビルドステップを後で確実に再現することは困難で費用がかかるため、後で展開時にSQLスクリプトのみを実行するSQLをキャプチャするというアイデアが生まれました。

SQLを生成するソースコードを制御することはできません。これは、hibernateを使用するJavaプログラムです。休止状態のトレース機能を使用するためにlog4j.properties/log4j.xmlをどこに配置するかはまだわかりません。また、「?」を示すプリペアドステートメントに問題がある可能性があります。実際の値の代わりに。

DB2のActivityMonitorとその使用方法の経験がある人はいますか?または、休止状態の構成でdb2ドライバーを置き換えるなどの他の(より簡単な)オプションはありますか?ただし、DB2Dialectドライバーを使用したいのですが。

編集:私はデータベース構造を制御できません。データベース構造が更新されるか、プロセスが将来別のテーブルに書き込む可能性があります。これは、現在設定しているソリューションに影響を与えることはありません。

4

2 に答える 2

0

ID が入力される前にテーブルが存在しないか空である場合は、レコードを含む結果のテーブルをエクスポートし、デプロイ時に本番データベースにインポートすることもできます。

すでに述べたように、実行されたアクションのログを使用してテーブルの内容を判断することは不可能であることが判明する可能性があります。プリペアド ステートメントのロギングにはバインドされたデータは含まれず、単純な挿入以上のものが実行された場合は、記録した内容を再現するために SQL の一部を実装しなければならない場合があります。

于 2010-01-22T21:41:32.690 に答える
0

p6spyを見てください:

P6Spy は、データベース ステートメントをインターセプトし、必要に応じて変更するアプリケーションをサポートするオープン ソース フレームワークです。P6Spy ディストリビューションには、次のモジュールが含まれています。

P6ログ。P6Log は、JDBC を使用するアプリケーションのデータベース ステートメントを傍受してログに記録します。このアプリケーションは、開発者が EJB サーバーによって生成された SQL ステートメントを監視するのに特に役立ち、開発者がサーバー上で最大の効率を達成するコードを記述できるようにします。P6Spy は数分でインストールできるように設計されており、コードを変更する必要はありません。

http://www.p6spy.com/

于 2010-01-22T23:16:40.230 に答える