以下のプロパティーを設定できます。
Java アプリケーション用のファイルが存在する場合、pureQuery はそのファイルの内容を削除してから、 新しいログ項目用にそのファイルを使用します。
traceFile プロパティーは、グローバル pdq.properties ファイルでのみ指定できます。
pureQuery コンポーネント・ロギングのトレース・レベルを指定できます。 pureQuery コンポーネント・トレース情報をログに記録する方法については、 『pureQuery Runtime コンポーネント・プロパティーのトレース・レベルを指定』を参照してください。
traceLevel プロパティーは、グローバル pdq.properties ファイルでのみ指定できます。
traceBufferRowCount プロパティーが有効な場合、ログ・レコードをファイルに 書き込むには、pureQuery Runtime プロパティー dumpLogsOnSqlCodes も指定する必要があります。 dumpLogsOnSqlCodes プロパティーの値は、SQL エラー・コードのリストです。 リストにあるエラーが発生した場合、メモリーにバッファリングされているログ・レコードがログ・ファイルに書き込まれます。 ログ・ファイルは、traceFile プロパティーで指定されます。 指定されたエラー・コードが検出されないか、またはプロパティー dumpLogsOnSqlCodes が指定されていない場合に、 メモリーの最大量に達すると、新規レコードがメモリーにバッファリングされたときに、最も古いレコードがメモリーから削除されます。
プロパティー dumpLogsExcludingSqlCodes は、ログ・レコードがログ・ファイルに書き込まれることのない SQL エラー・コードとともに 指定できます。
pdq.traceBufferRowCount=8000 pdq.dumpLogsOnSqlCodes=default
traceBufferRowCount オプションは、 スタンドアロン pureQuery Runtime アプリケーションとともに使用されるように設計されています。 これは、WebSphere® リング・バッファーとは無関係です。
pdq.traceBufferRowCount=8000 pdq.dumpLogsOnSqlCodes=-805|-810
SQL エラー・コード -805 または -810 が発生した場合、 あるいは traceBufferRowCount プロパティーによって指定されたレコードの数がメモリーにバッファリングされた 場合、pureQuery Runtime は、メモリー内にあるログ・レコードをログ・ファイルに書き込みます。
pdq.traceBufferRowCount=8000 pdq.dumpLogsOnSqlCodes=default|-3476
キーワード default を使用する場合は、 バッファリングされたログ・レコードがログ・ファイルに書き込まれることのない 特定の SQL エラー・コード dumpLogsExcludingSqlCodes を指定できます。 pureQuery Runtime のデフォルト SQL エラー・コードのリストについては、 『ロギングで使用される pureQuery Runtime のデフォルト SQL エラー・コードのリスト』を参照してください。
次の例では、最大 8000 個のログ・レコードをメモリーにバッファリングできます。 pureQuery Runtime は、デフォルト・リスト内の SQL エラー・コード、またはエラー・コード -3476 が検出されると、 バッファリングされたログ・レコードをログ・ファイルに書き込みます。 SQL エラー・コードのデフォルト・リストには、エラー・コード -805 が含まれています。 dumpLogsExcludingSqlCodes プロパティーでは、SQL エラー・コード -805 が発生した場合に、 バッファリングされたログ・レコードがログ・ファイルに書き込まれないことが指定されました。
pdq.traceBufferRowCount=8000 pdq.dumpLogsOnSqlCodes=default|-3476 pdq.dumpLogsExcludingSqlCodes=-805
pureQuery Runtime は java.util.logging フレームワークを使用します。 そのフレームワーク内で、pureQuery Runtime は親ロガー com.ibm.pdq.logger を指定します。 Java ロギング API 規則/ツールを使用すれば、手動で、またはご使用の アプリケーションで、com.ibm.pdq に対してログ・レベルおよびログ・ファイルを設定して、pureQuery ログ・メッセージが このロガーに転送されるようにすることができます。
多くのアプリケーション・サーバーには、java.util.logging フレームワークで実行されるロガーを構成するための管理ツールが用意されています。 例えば、WebSphere Application Server では、pureQuery ロギング/トレースを制御するように com.ibm.pdq ロガーを構成できます。 アプリケーション・サーバーのツールを使用しても、pureQuery Runtime プロパティーで pureQuery ロギングを構成できます。 pureQuery は、com.ibm.pdq logger レベルが pureQuery の pdq.traceLevel プロパティーに指定されたレベルよりも高く、com.ibm.pdq logger レベルが INFO よりも高い場合、com.ibm.pdq logger レベルを使用します。 WebSphere Application Server Integrated Solutions Console で
を 選択すれば、com.ibm.pdq ロガー・レベルを設定できます。com.ibm.pdq logger のトレース・レベルが INFO よりも包括的なレベルに設定されていて、pureQuery プロパティーでは com.ibm.pdq logger のトレース・レベルよりも包括的なレベルを指定していない場合、pureQuery は com.ibm.pdq logger のレベルを継承します。
pureQuery アプリケーションと一緒に WebSphere Application Server を使用する計画の場合に、WebSphere Application Server のログ内で pureQuery ログ項目を参照するのであれば、INFO より上位のレベルに設定する必要があります。
pureQuery Runtime は、ロギングと JDBC ドライバー・ログを明示的には統合しません。 ただし、Java ロギング API を使用してログへの記録も行う JDBC ドライバーは、ロギング・フレームワークの統合に参加できます。 つまり、JDBC ドライバーと pureQuery Runtime の両方が WebSphere トレースに記録するように 構成されている場合、pureQuery および JDBC ドライバーのログ項目は同じログ・ファイルにインターリーブされます。
アプリケーションが IBM® Data Server Driver for JDBC and SQLJ を使用して、サポートされている DB2® データベースに接続する際に、Connection オブジェクト上の getJccSpecialRegisterProperties() メソッドを呼び出す場合は、pureQuery はオブジェクト上のこのメソッドに対する最初の呼び出しの結果をログに記録できます。pureQuery がログに書き込むメッセージには、ドライバーがデータベース用にサポートする特殊レジスターの非ヌル値がすべてリストされます。
ログ内のこのメッセージを参照するには、トレース・レベルを FINE に設定します。
DB2 コール・レベル・インターフェースまたは IBM Data Server Driver と pureQuery Runtime を一緒に使用する場合は、pureQuery Runtime プロパティーを構成キーワードとして使用できます。
構成ファイル db2cli.ini または dsdriver.cfg には 2 つのキーを設定できます。
CLI アプリケーションが実行されるディレクトリーに対する絶対パスまたは相対パスを使用できます。 ファイルが存在する場合は、ファイルの既存の内容に新しいログ・メッセージが追加されます。
CLI アプリケーションが実行されるディレクトリーに対する絶対パスまたは相対パスを使用できます。 ファイルが存在する場合は、ファイルの既存の内容に新しいログ・メッセージが追加されます。
db2cli.ini ファイル内の以下の行は、traceFile を /user/CLIOPTtraces.log に、traceLevel を INFO に設定します。
traceFile=/user/CLIOPTtraces.log traceLevel=INFO