この章では、Audit Vaultシステムを管理するためのトラブルシューティング情報を提供します。この章の内容は次のとおりです。
表6-1では、Audit Vault Serverの$ORACLE_HOME/av/log
ディレクトリにあるAudit Vault Serverのログ・ファイルおよびエラー・ファイルの名前と説明を示しています。これらのファイルには、問題が発生した場合にその診断に便利なコマンドおよび操作のリターン状態に関する重要な情報が含まれています。ログ・ファイルは、avca.log
ファイル以外は、いつでも削除できます。avca.log
ファイルは、Audit Vault Serverが停止しているときにのみ削除できます。
表6-1 Audit Vault Serverのログ・ファイルおよびエラー・ファイルの名前と説明
ファイル名 | 説明 |
---|---|
|
エージェント・インストールで発生したエラーのログが含まれます。このファイルは、いつでも削除できます。 |
|
プライマリ・エージェント関連のすべての操作およびアクティビティのログが含まれます。このファイルは、いつでも削除できます。 |
|
実行されたすべてのAVCAコマンドおよび各コマンドの実行結果のログが含まれます。このファイルは、Audit Vault Serverの停止後にのみ削除できます。 |
|
エージェント操作およびその操作から戻されたエラーのログが含まれます。 |
|
実行されたすべてのAVORCLDBコマンドおよび各コマンドの実行結果のログが含まれます。このファイルは、いつでも削除できます。 |
Oracle Enterprise Managerでは、ログをAudit Vault_Server_Home
/
Host_Name
_
SID
/sysman/log
ディレクトリに格納します。このディレクトリにあるemdb.nohup
ファイルには、Audit Vaultコンソールのアクティビティ(グラフィカル・ユーザー・インタフェース(GUI)の対話、AVCTLユーティリティからのリクエスト、様々なAudit Vaultエージェントとの通信など)のログが含まれています。この情報は、サーバーとエージェント間の通信の問題をデバッグするために使用できます。
表6-2では、Audit Vault Agentの$ORACLE_HOME/av/log
ディレクトリにあるAudit Vault Agentのログ・ファイルおよびエラー・ファイルの名前と説明を示しています。これらのファイルには、問題が発生した場合にその診断に便利なコマンドおよび操作のリターン状態に関する重要な情報が含まれています。
表6-2 Audit Vault Agentのログ・ファイルおよびエラー・ファイルの名前と説明
ファイル名 | 説明 |
---|---|
|
エージェント・インストールおよび操作で発生したすべてのエラーのログが含まれます。このファイルは、いつでも削除できます。 |
|
プライマリ・エージェント関連のすべての操作およびアクティビティのログが含まれます。このファイルは、いつでも削除できます。 |
|
実行されたすべてのAVCAコマンドおよび各コマンドの実行結果のログが含まれます。このファイルは、いつでも削除できます。 |
|
実行されたすべてのAVORCLDBコマンドおよび各コマンドの実行結果のログが含まれます。このファイルは、いつでも削除できます。 |
|
DBAUD_Collectorコレクタの収集操作のログが含まれます。このファイルは、Audit Vault Agentの停止後にのみ削除できます。 |
|
OSAUD_Collectorコレクタのすべての収集操作のログが含まれます。このファイルは、Audit Vault Agentの停止後にのみ削除できます。 |
|
エージェント操作およびその操作から戻されたエラーのログが含まれます。 |
|
SQL*Net情報のログが含まれます。 |
Audit_Vault_Agent_Home
/oc4j/j2ee/home/log
ディレクトリには、エージェントOC4Jによって生成されたログが含まれます。このディレクトリのAVAgent-access.log
ファイルには、Audit Vault Serverからエージェントが受信するリクエストのログが含まれます。この情報は、サーバーとエージェント間の通信の問題をデバッグするために使用できます。
失敗した構成コマンドは、Audit Vault Agentの$ORACLE_HOME/cfgtoollogs
ディレクトリにあり、このディレクトリにはconfigToolFailedCommandsファイルが含まれます。このファイルには、失敗したコマンドの名前のみが含まれます。関連するエラーおよびエラー・メッセージを含むその他の情報は、avca.log
またはavorcldb.log
ファイルを参照してください。
この項では、一部のAudit Vaultコンポーネントで発生する可能性のある多くのトラブルシューティング・シナリオ、および各シナリオの解決方法を説明します。シナリオは、次のようにグループ化されます。
この項では、発生する可能性のあるAudit Vault Serverの問題を説明します。
問題: REDOコレクタ使用時にAudit Vault Serverのパフォーマンスをチューニングするには、どうすれば一番よいか。
Audit Vault Serverをインストールしたら、streams_pool_size
初期化パラメータを150MBに設定します。REDOコレクタを使用する場合は、そのパフォーマンスを最大にするために、このパラメータをチューニングする必要があります。Oracle Real Application Clusters(Oracle RAC)環境では、このパラメータをすべてのノードでチューニングする必要があります。特にインスタンスの起動後はキューの場所が不確定になるためです。
解決策:
通常、一度REDOコレクタを構成し、開始したら、しばらくはそのまま実行します。こうすることで、Oracle Databaseの自動チューニング機能により、streams_pool_size
パラメータに最良のデータベース・パフォーマンス実現のためのメモリーが割り当てられます。AWRを使用して、STREAMS AQにフロー制御の問題(エンキューのブロック)がないか確認します。パフォーマンスが、たとえば、1秒当たりの適用レコード数がわずか500であることに気付いた場合、このパラメータの手動によるチューニングが必要になります。
Audit Vault Serverシステムに最低1GBの物理メモリーがあると仮定した場合、SQLコマンドALTER SYSTEM SET STREAMS_POOL_SIZE=200;
を使用して、このパラメータを200MBに設定します。AWRを使用して、再びパフォーマンスを監視します。レコード適用率2000レコード/秒という、REDOコレクタの標準的な最高適用率を達成する必要があります。一般に、値を200MBに設定すれば十分です。Oracle RAC環境でOracle Audit Vaultを使用している場合は、クラスタ内のすべてのノードでこのパラメータ値を適宜設定します。SQLコマンドALTER SYSTEM SET STREAMS_POOL_SIZE=200 SID=av
n;
を使用します。n
は、クラスタ内の各ノードのSIDの数値部分で、たとえば、av2
、av3
、av4
などとなります(そのようなネーミング規則がある場合)。
この項では、発生する可能性のあるAudit Vault Agentの問題を説明します。
問題: エージェント・シェルでのAVORCLDB setupコマンドの発行中、エージェントにソースを設定する際にsrcusrパスワードを誤入力した。この問題からはどのようにリカバリしたらよいか。
エージェント・シェルでは、最後の設定手順の1つに、AVORCLDB setupコマンドを使用したソースとエージェントとの設定が含まれます。間違ったパスワードを入力してコマンドを起動した場合には、-srcusr
引数の入力時に、パスワードが認識されないというエラー・メッセージが戻されます。このため、エラーの原因がパスワードの誤入力であることに気が付きます。
ソース・ユーザーの正しいパスワードを使用してコマンドの再入力を試行すると、資格証明がすでに存在することが示され、パスワードを再入力できません。setupコマンドおよび正しいソース・ユーザー・パスワードを使用できるようにするには、この問題をどのように回避したらよいでしょうか。
解決策:
追加された不正な資格証明により、Audit Vault Agentホームでavwalletにデータが移入されます。解決策の1つは、avwalletファイルの名前を変更して新しいavwalletファイルを作成することです。次に、agentuser資格証明を追加する必要があります。最後に、正しいソース・ユーザー・パスワードを使用して、AVORCLDB setupコマンドを起動します。この手順を次に示します。
Audit Vault Agentホームで、ディレクトリをavwallet
ディレクトリに変更します。
cd ../../network/admin/avwallet
avwallet
ファイルの名前を変更します。
mv avwallet/ avwallet.1
avwallet
ファイルを作成します。-wpwd
引数は、対応する環境変数AVCA_WPWD
がwallet password
に設定されている場合は省略できます。コマンドライン引数-wpwd
が指定されている場合、コマンドライン引数は環境変数に優先します。この例では、環境変数が設定されており、-wpwd
引数は省略されています。
avca create_wallet -wrl $ORACLE_HOME/network/admin/avwallet
avwallet
ファイルが作成されたことを確認します。
ls -l avwallet
Audit Vaultデータベースへの接続を許可する資格証明が存在しないことを確認します。
sqlplus /@av
エージェント・ユーザーの資格証明が存在しないために接続が失敗することに注意してください。
エージェント・ユーザーの資格証明を作成します。-wpwd
引数は、対応する環境変数AVCA_WPWD
がwallet password
に設定されている場合は省略できます。コマンドライン引数-wpwd
が指定されている場合、コマンドライン引数は環境変数に優先します。-usr
引数は、対応する環境変数AVCA_USR
がusr/password
に設定されている場合は省略できます。コマンドライン引数-usr
が指定されている場合、コマンドライン引数は環境変数に優先します。この例では、環境変数が設定されており、-wpwd
引数は省略されています。
avca create_credential -wrl $ORACLE_HOME/network/admin/avwallet -wpwd <passwd> -dbalias <dbalias>
Audit Vaultデータベースへの接続を許可するエージェント・ユーザーの資格証明が存在することを確認します。
sqlplus /@av
接続が成功します。
Audit Vault AgentシェルでAVORCLDB setup
コマンドを起動します。-wpwd
引数は、対応する環境変数AVORCLDB_WPWD
がwallet password
に設定されている場合は省略できます。-srcusr
引数は、対応する環境変数AVORCLDB_SRCUSR
がsource username/password
に設定されている場合は省略できます。コマンドライン引数-wpwd
および-usr
が指定されている場合、コマンドライン引数は環境変数に優先します。この例では、これらの環境変数が設定されており、-srcusr
および-wpwd
引数は省略されています。
avorcldb setup -srcname DBS1.US.ORACLE.COM
SRCDBA1の別名が含まれることを確認するために、Audit Vault Agentホームのtnsnames.ora
ファイルをチェックします。
vi tnsnames.ora SRCDB1 = (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost) (PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=src1.DBS1.US.ORACLE.COM)))
ソース・データベースのソース・ユーザー別名で、Audit Vaultデータベースに接続できることを確認します。
sqlplus /@srcdba1
接続が成功します。avwallet
ファイルが受け入れられて機能しています。
この項では、発生する可能性のあるAudit Vaultコレクタの問題を説明します。
問題: コレクタの開始に失敗しエラーが戻される。
ソースとコレクタを追加して、3.2項で説明されている構成手順の一部としてエージェントにソースを設定すれば、各コレクタを開始する準備ができます。しかし、Audit Vaultコンソールを介してコレクタの開始を試行すると、HTTPエラーが表示されて操作が失敗します。AVCTL start_collector
コマンドを使用して同じ操作を試行した場合も失敗しますが、次のエラー・メッセージが表示されます。
Starting collector...Error executing task start_collector: Cannot find Agent for Collector <source-name>:OSAUD
Audit Vault Agentでagent.err
ログ・ファイルをクイック検索すると、次のエラーが表示されます。
SEVERE: java.sql.SQLException: ORA-28150: proxy not authorized to connect as client
ORA-28150エラーには、プロキシ・ユーザーがエージェントとして接続を試行したが、そのプロキシはエージェントのかわりとして機能する権限がなかったことが原因として記述されています。
解決策:
ORA-28150エラーには、SQLのALTER USER...GRANT CONNECT
コマンドを使用して、プロキシ・ユーザーにクライアントのかわりとして処理を実行する権限を付与するという解決策が記述されています。
構成手順の1つは、Audit Vaultソース・ユーザーを作成することです。次に、エージェント・ユーザーを介してAudit Vaultソース・ユーザーにプロキシ接続権限を付与します。この手順を忘れると、これらのエラー・メッセージの原因になります。エージェント・ユーザー<agentusr>を介して、Audit Vaultソース・ユーザーに、ソース・データベースに接続するためのAudit Vaultソース・ユーザー<avsrcusr>へのプロキシ接続権限が付与されていないことを意味します。
エージェント・ユーザー<agentusr>を介してAudit Vaultソース・ユーザー<avsrcusr>にプロキシ接続権限を付与する方法の詳細は、3.2項の手順2bの後半を参照してください。この手順を実行すると、問題を解決できます。この手順を実行するための詳細な構文は、例3-3を参照してください。Audit Vaultソース・ユーザーにこのプロキシ接続権限を付与すると、どのコレクタの開始を試行しても成功します。
問題: DBAUD_CollectorまたはOSAUD_Collectorコレクタが、それぞれAUD$表およびOSファイルから収集しているかどうかわからない。
DBAUD_CollectorおよびOSAUD_Collectorの両方を設定した後、それらがそれぞれAUD$表およびOSファイルから収集していることの確認が必要な場合があります。
解決策:
DBAUD_CollectorがAUD$表から収集しているかどうかを確認するには、Audit Vault Agentホームの/av/log
ディレクトリにあるDBAUD_Collector_<source-name_prefix><source-id>.log
ファイルの内容を確認します。
DBAUD_CollectorがOSファイルから収集しているかどうかを確認するには、Audit Vault Agentホームの/av/log
ディレクトリにあるorcldb_osaud_<source name>.log
ファイルの内容を確認します。
各ファイルをエディタで開き、コレクタが監査レコードを収集していることを示すエントリを検索します。
たとえば、DBAUD_Collectorのログ・ファイルには次のようなエントリがあります。
***** Started logging for 'AUD$ Audit Collector' ***** . . . INFO @ '25/01/2007 19:08:42 -8:00': ***** SRC connected OK INFO @ '25/01/2007 19:08:53 -8:00': ***** SRC data retireved OK . . .
たとえば、OSAUD_Collectorのログ・ファイルには次のようなエントリがあります。
File opened for logging source "DBS1.REGRESS.RDBMS.DEV.US.ORACLE.COM" INFO @ '24/01/2007 18:16:18 -8:00': ***** Started logging for 'OS Audit Collector' *****
問題がなければエディタを閉じ、Audit Vault ServerシェルでAVCTL refresh_warehouseコマンドを使用してウェアハウスをリフレッシュします。この操作が完了したら、Audit VaultコンソールにAudit Vault監査者としてログインし、「概要」ページの「監査イベント・カテゴリ別アクティビティ」という名前のグラフのサマリーで、様々なイベント・カテゴリに追加の監査レコードが表示されていることを確認します。様々なイベント・カテゴリの件数の増加は、コレクタにより監査レコードが収集されていることを示します。
問題: DBAUD_Collectorの開始時またはREDO_Collectorの設定時に、「ORA-01017: 無効なユーザー名/パスワードです。」というログオン拒否のエラーが表示される。
DBAUD_Collectorの開始またはREDO_Collectorの設定を試行すると、「ORA-01017: 無効なユーザー名/パスワードです。」というログオン拒否のエラーが表示されます。
解決策:
このエラーは、パスワード・ファイルのユーザー名またはパスワード(あるいはその両方)の問題である可能性があります。ユーザー名およびパスワードを再作成してください。問題が解決されない場合は、パスワード・ファイルを再作成します。
この項では、発生する可能性のあるAudit Vaultコンソールの問題を説明します。
問題: WebブラウザでAudit Vaultコンソールを表示できない。
WebブラウザでAudit Vaultコンソールの表示を試行すると、ハングするか、しばらくしてタイムアウトします。
解決策:
この問題は、Audit Vaultコンソールが停止しているために発生する場合があります。Audit Vaultコンソールのステータスを確認するには、Audit Vault ServerシェルでAVCTL show_av_statusコマンドを発行します。Audit Vaultコンソールが停止していることを示すステータスの場合は、Audit Vault ServerシェルでAVCTL start_avコマンドを発行して、再起動します。その後、WebブラウザでAudit Vaultコンソールを開きます。Audit Vaultコンソールが表示され、Audit Vault監査者または管理者の管理システムにログインできます。
この項では、Oracle Real Application Clusters(Oracle RAC)環境でAudit Vaultを実行するときに発生する可能性のあるいくつかの問題を説明します。
問題: Oracle RAC環境で、Oracle RACノードの1つからAVCA drop_agent操作を発行すると、エラーが表示されてコマンドが失敗する。
Oracle RACノードの1つからAVCA add_agent
コマンドの発行を試行すると、コマンドが失敗します。
解決策:
Oracle RAC環境では、AVCAコマンドは、Oracle Enterprise Managerが存在するノードから発行する必要があります。これは、av.ear
ファイルがデプロイされているのと同じノードです。
Oracle RAC環境では、AVCAおよびAVCTLコマンドを発行できるのは、av.ear
ファイルがデプロイされているノードのみです。
av.ear
ファイルがデプロイされている場所を確認するには、$ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/av/av/WEB-INF/classes/av.properties
ファイルのある場所を確認します。
ノードを特定したら、すべてのAVCAおよびAVCTLコマンドをそのノードから実行します。
av.ear
ファイルがデプロイされているノードが停止している場合は、AVCA deploy_av
コマンドを使用して、av.ear
ファイルを別のノードにデプロイします。コマンドの構文は次のとおりです。
deploy_av -avadm <usr>/<pwd> -jdbc_str <jdbc connect string> -sid <sid> -dbalias <db alias> -avconsoleport <av console port>
この例の変数の意味は次のとおりです。
-avadm <usr>/<pwd>
は、Audit Vault管理者(AV_ADMINロールを付与されているユーザー)のユーザー名およびパスワードです。ユーザー名とパスワードを区切るには、スラッシュ(/)を使用します。-avadm
引数は、対応する環境変数AVCA_AVADM
がusr/pwd
に設定されている場合は省略できます。コマンドライン引数-usr
が指定されている場合、コマンドライン引数は環境変数に優先します。
-jdbc_str <jdbc connect string>
は、Audit Vaultへ接続するためのJDBC接続文字列です。jdbc:oracle:<driver type>:@//<host>:<port>/<service name>
という書式が使用されます。
-sid <sid>
は、インスタンスのOracleシステム識別子(SID)です。
-dbalias <db alias>
は、データベース別名です。
-avconsoleport <av console port>
は、Audit Vaultコンソールのポート番号です。