24 ロギングの管理
Oracle Fusion Middlewareでのロギングの一般的な情報は、『Oracle Fusion Middlewareの管理』のログ・ファイルと診断データの管理に関する項を参照してください。
この章の内容は次のとおりです。
24.1 ロギングの概要
他のOracle Fusion Middlewareコンポーネントと同様に、Oracle Internet Directoryは診断ログ・ファイルをOracle Diagnostic Logging形式(ODL)で書き込みます。
関連項目:
ODLの詳細は、『Oracle Fusion Middlewareの管理』のログ・ファイルと診断データの管理に関する項 を参照してください。
24.1.1 Oracle Internet Directoryファイルの位置
Oracle Internet Directoryツールとサーバーは、ログとトレースの情報を$DOMAIN_HOMEのログ・ファイルに出力します。
表24-1では、各コンポーネントおよび対応するログ・ファイルの位置を示します。
表24-1 Oracle Internet Directoryログ・ファイルの位置
| ツールまたはサーバー名 | ログ・ファイル名 |
|---|---|
|
バルク・ローダー( |
|
|
バルク・モディファイア( |
|
|
バルク削除ツール( |
|
|
カタログ管理ツール( |
|
|
データ・エクスポート・ツール( |
|
|
ディレクトリ・レプリケーション・サーバー( |
|
|
ディレクトリ・サーバー( |
ノート: oidstackInstNumberログ・ファイルはSIGSEGV/SIGBUS追跡に関係します。また、ディレクトリ・インスタンスの起動時に空ファイルがこの名前で作成されますが、無視できます。 |
|
LDAPディスパッチャ( |
|
|
OIDモニター(OIDMON) |
ノート:
|
24.1.2 Oracle Internet Directoryデバッグ・ロギングの機能
Oracle Internet Directoryを使用すると、ロギング情報を表示できます。
Oracle Internet Directoryによって、次のことが可能になります。
-
ディレクトリ・サーバー、ディレクトリ・レプリケーション・サーバー、Directory Integration Serverに関するロギング情報の表示
-
ロギング・レベルの設定
-
ロギングする操作の指定
-
致命的エラーおよび重大エラーに対する対処方法を判断するための標準形式のメッセージの検索
-
重大度と重要性の度合いによるトレース・メッセージの表示
-
エントリの識別名、ACP評価、操作のコンテキストなどに関する関連情報の入ったトレース・メッセージを調べることによるOracle Internet Directoryコンポーネントの診断
24.1.3 ログ・メッセージの理解
この項では、特定のLDAP操作に関連付けられたログ・メッセージおよび関連付けられていないログ・メッセージについて説明します。トレース・ログの例およびその解釈方法を示します。
他のOracle Fusion Middlewareコンポーネントと同様に、Oracle Internet Directoryは診断ログ・ファイルをOracle Diagnostic Logging形式(ODL)で書き込みます。ODLフォーマットは、Oracle Fusion Middlewareの管理を参照してください。
24.1.3.1 特定のLDAP操作に関するログ・メッセージ
特定の操作に対するログ・メッセージは、トレース・オブジェクトとして格納されます。このオブジェクトにより、各種のOracle Internet Directoryモジュールにわたって、操作の開始から終了までが追跡されます。これは、次のいずれかの状態が発生した場合に、ログ・ファイルに記録されます。
-
LDAP操作が完了したとき
-
優先度の高いメッセージが記録されたとき
-
トレース・メッセージ・バッファが一杯になったとき
各スレッドは、操作ごとに連続的な情報ブロックを1つ持ち、そのブロックは明確に区切られます。したがって、共有サーバー環境でも、異なるスレッド、操作、接続に関するメッセージの追跡が容易です。
内部メッセージのバッファ・オーバーフローのため、単一のトレース・オブジェクトに1つの操作に関するすべての情報を格納できない場合、この情報は複数のトレース・オブジェクトに分散されます。分散された情報の各部分は明確に区切られており、共通のヘッダーが付けられています。操作の進行を追跡するには、トレース・オブジェクトおよびその共通ヘッダーを最後までたどります(「操作が完了しました」というトレース・メッセージで示されます)。
24.1.3.2 特定のLDAP操作と関連付けられていないログ・メッセージ
どのLDAP操作とも関連付けられていないメッセージは、オブジェクトベースではない単純な形式で表示されます。これは、操作が完了するか、または優先度の高いメッセージが発生したときにログ・ファイルに記録されます。
操作を実行しないスレッドでは、トレース・メッセージのみが記録されます。そのヘッダーには、日付、時間およびスレッド識別子が含まれます。ここには、実行コンテキストID(ECID)または接続および操作関連情報は含まれません。
トレース・オブジェクトは、キーワードBEGINで始まり、キーワードENDで終わります。
24.1.3.3 Oracle Internet Directoryサーバー・ログ・ファイル内のトレース・メッセージの例
[2008-11-14T15:28:01-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 0] Main:: Starting up the OiD Server, on node srvhst.us.abccorp.com. [2008-11-14T15:28:01-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 0] Main:: Oid Server Connected to DB store via inst1 connect string. [2008-11-14T15:28:01-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 0] Main:: Loading Root DSE ... [2008-11-14T15:28:01-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 0] Main:: Loading subschema subentry ... [2008-11-14T15:28:01-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 0] Main:: Loading catalog entry ... [2008-11-14T15:28:01-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 0] Main:: OiD LDAP server started. [2008-11-14T15:28:02-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 2] ServerDispatcher : Thread Started [2008-11-14T15:28:02-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 1] ServerDispatcher : Thread Started [2008-11-14T15:28:02-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 3] ServerWorker (REG): Thread Started [2008-11-14T15:28:02-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 4] ServerWorker (REG): Thread Started [2008-11-14T15:28:02-08:00] [OID] [NOTIFICATION:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 5] ServerWorker (SPW): Thread Started [2008-11-14T15:28:47-08:00] [OID] [TRACE:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 3] [ecid: 004MuuNFY7UCknT6uBU4UH0001i30000Ee,0] ServerWorker (REG):[[ BEGIN ConnID:87 mesgID:2 OpID:1 OpName:bind ConnIP:170.90.11.210 ConnDN:cn=orcladmin 15:28:47-08:00 * gslfbiADoBind * Entry 15:28:47-08:00 * gslfbiGetControlInfo * Entry 15:28:47-08:00 * gslfbiGetControlInfo * Exit 15:28:47-08:00 * gslfbidbDoBind * Version=3 BIND dn="cn=orcladmin" method=128 15:28:47-08:00 * gslsbnrNormalizeString * String to Normalize: "orcladmin" 15:28:47-08:01 * gslsbnrNormalizeString * Normalized value: "orcladmin" 15:28:47-08:01 * gslfrsBSendLdapResult * Entry 15:28:47-08:01 * gslfrsASendLdapResult2 * Entry 15:28:47-08:01 * sgslunwWrite * Entry 15:28:47-08:01 * sgslunwWrite * Exit 15:28:47-08:01 * gslfrsASendLdapResult2 * Exit 15:28:47-08:01 * gslfrsBSendLdapResult * Exit 15:28:47-08:01 * gslfbiADoBind * Exit TOTAL Worker time : 4402 micro sec END ]] [2008-11-14T15:28:56-08:01] [OID] [TRACE:16] [] [OIDLDAPD] [host: srvhst.us.abccorp.com] [pid: 7043] [tid: 4] [ecid: 004MuuNqbefCknT6uBU4UH0001i30000Lf,0] ServerWorker (REG):[[ BEGIN ConnID:126 mesgID:1 OpID:0 OpName:bind ConnIP:170.90.11.210 ConnDN:Anonymous 15:28:56-08:01 * gslfbiADoBind * Entry 15:28:56-08:01 * gslfbiGetControlInfo * Entry 15:28:56-08:01 * gslfbiGetControlInfo * Exit 15:28:56-08:01 * gslfbidbDoBind * Version=3 BIND dn="" method=128 15:28:56-08:01 * gslfrsBSendLdapResult * Entry 15:28:56-08:01 * gslfrsASendLdapResult2 * Entry 15:28:56-08:01 * sgslunwWrite * Entry 15:28:56-08:02 * sgslunwWrite * Exit 15:28:56-08:02 * gslfrsASendLdapResult2 * Exit 15:28:56-08:02 * gslfrsBSendLdapResult * Exit 15:28:56-08:02 * gslfbiADoBind * Exit TOTAL Worker time : 2591 micro sec END ]]
24.2 Fusion Middleware Controlを使用したロギングの管理
Oracle Enterprise Manager Fusion Middleware Controlを使用すると、ログ・ファイルの表示やデバッグ・ロギングの構成が可能です。
詳細は、次の項を参照してください。
24.2.1 Fusion Middleware Controlを使用したログ・ファイルの表示
Fusion Middleware Controlを使用してログ・ファイルを表示できます。
Fusion Middleware Controlを使用してログ・ファイルを表示するには:
- 「Oracle Internet Directory」メニューから、「ログ」を選択し、「ログ・メッセージの表示」を選択します。「ログ・メッセージ」ページが表示されます。
- 表示するログの日付範囲を選択します。「最新」、分単位、時間単位または日単位を選択できます。また、「時間間隔」を選択し、開始日時と終了日時を指定することもできます。
- 表示する「メッセージ・タイプ」を選択します。
- 「最大表示行数」を指定します。
- 「表示」リストから、「列」を選択して表示列を変更します。「列の並替え」を選択して列の順序を変更します。
- 各列内では、列ヘッダーの上矢印または下矢印を選択することで、昇順と降順を切り替えることができます。
- 「表示」リストから、表示対象として、全メッセージ、メッセージ・タイプ別サマリーまたはメッセージID別サマリーを選択します。
- 特定の検索を実行するには、「フィールドの追加」を選択し、検索するフィールドを追加します。各フィールドに対し、基準をリストから選択した後、テキストをボックスに入力します。フィールドを削除するには、赤いXを選択します。フィールドを追加するには、「フィールドの追加」を選択します。基準の追加が終了した後、「検索」を選択します。
- ドメインに関するメッセージを表示するには、「広範囲のターゲット・スコープ」リストを使用します。
- ログ・メッセージをXML、テキストまたはカンマ区切りのリストとしてファイルにエクスポートするには、「メッセージをファイルにエクスポート」を選択します。
- 個々のログ・ファイルに関する情報を表示するには、「ターゲット・ログ・ファイル」をクリックします。
- 表示をリフレッシュするタイミングを指定できます。右上のリストから「手動リフレッシュ」、「30秒リフレッシュ」または「1分間リフレッシュ」を選択します。
- リストされている列の変更や列の並替えには、「表示」リストを使用します。
- メッセージのグループ分けの変更には、「表示」リストを使用します。
- ログ・メッセージのリストのみを表示するには、「検索」ラベルを閉じます。
- ログ・ファイルの内容を表示するには、「ログ・ファイル」列でファイル名をダブルクリックします。「ログ・ファイルの表示: filename」ページが表示されます。「時間」、「メッセージ・タイプ」および「メッセージID」で上向きまたは下向きの矢印を使用してファイル内のレコードを並べ替えることができます。
24.2.2 Fusion Middleware Controlを使用したロギングの構成
Fusion Middleware Controlを使用してロギングを構成できます。
表24-2 「サーバー・プロパティ」ページ、「ロギング」タブの構成属性
| フィールドまたはヘッダー | 構成属性 |
|---|---|
|
デバッグ・レベル |
|
|
デバッグ操作の有効化 |
|
|
最大ログ・ファイル・サイズ(MB) |
|
|
ローテーション状態を保つログ・ファイルの最大数 |
|
ロギングを構成するには:
- 「Oracle Internet Directory」メニューから、「管理」→「サーバー・プロパティ」→「ロギング」を選択します。
- 「デバッグ・レベル」の下で、記録するアクティビティのタイプを選択します。
- 「デバッグ操作の有効化」の下で、記録するLDAP操作を有効にします。
- 「ロギング」の下で、「最大ログ・ファイル・サイズ(MB)」と「ローテーション状態を保つログ・ファイルの最大数」の値を指定します。デフォルトは、それぞれ1MBと100ログ・ファイルです。
ノート:
「サーバー・プロパティ」ページの「ロギング」タブで設定する値によって、LDAPサーバー・デバッグが制御されます。
24.3 コマンドラインからのロギングの管理
ロギング関連タスクは、コマンド行から管理することもできます。
詳細は、次の項を参照してください。
24.3.2 コマンド行を使用したデバッグ・ロギング・レベルの設定
デバッグ・ロギング・レベルを設定するには、ldapmodifyコマンドを使用します。
デバッグ・レベルは加算方式であるため、アクティブ化する機能を表す数値を加算し、その合計値をコマンド行オプションに使用する必要があります。
デフォルトでは、デバッグ・ログは記録されません。有効にするには、インスタンス固有の構成エントリで属性orcldebugflagを必要なレベルに変更します。
ノート:
インスタンス固有の構成エントリの識別名の形式は次のとおりです。
cn=componentname,cn=osdldapd, cn=subconfigsubentry
デバッグ・レベルは、次のレベルのいずれかに構成できます。
表24-3に、OrclDebugFlagの値を示します。
表24-3 OrclDebugFlagの値
| 値 | 操作 |
|---|---|
|
|
大容量トレースのデバッグ |
|
|
パケット・ハンドリングのデバッグ |
|
|
接続管理 |
|
|
検索フィルタの処理 |
|
|
エントリの解析 |
|
|
構成ファイルの処理 |
|
|
アクセス制御リストの処理 |
|
|
DBとの通信のログ |
|
|
スキーマ関連の操作 |
|
|
レプリケーション固有の操作 |
|
|
各接続のエントリ、操作および結果のログ |
|
|
ファンクション・コール引数のトレース |
|
|
このサーバーに接続されているクライアントの数とアイデンティティ |
|
|
すべての可能な操作とデータ |
|
|
Javaプラグイン・フレームワーク関連のすべてのJavaプラグイン・デバッグ・メッセージと内部サーバー・メッセージ |
|
|
ServerLogオブジェクトを使用してJavaプラグインによって渡されるすべてのメッセージ |
|
|
上の両方 |
たとえば、検索フィルタの処理(512)と接続管理(256)をトレースするには、デバッグ・レベルとして768 (512 + 256 = 768)と入力します。
orcldebugflagを使用して、ロギングを有効または無効にできます。たとえば、インスタンスoid1についてorcldebugflagの値を1に設定することによりロギングをオンにするには、次のコマンドを使用します。
ldapmodify -p oidPort -D cn=orcladmin -w adminPasswd -f debugOn.ldif
debugOn.ldifには、次の内容が含まれています。
dn: cn=oid1,cn=osdldapd,cn=subconfigsubentry changetype: modify replace: orcldebugflag orcldebugflag: 1
ロギングを無効にするには、インスタンスのorcldebugflagの値を0に設定します。たとえば、インスタンスoid1のデバッグを無効にするには、次のコマンドを使用します。
ldapmodify -p oidPort -D cn=orcladmin -w adminPasswd -f debugOff.ldif
この場合、debugOff.ldifには次が含まれます。
dn: cn=oid1,cn=osdldapd,cn=subconfigsubentry changetype: modify replace: orcldebugflag orcldebugflag: 0
ノート:
orcldebugflagの値は、LDAPサーバー・デバッグを制御します。レプリケーション・サーバー・デバッグを制御するには、「ldapmodifyを使用したレプリケーション構成セットの属性の構成の概要」で説明しているように、orcldebuglevelの値を設定します。
24.3.3 コマンド行を使用したデバッグ操作の設定
特定のディレクトリ・サーバー操作にロギングを制限してロギングをより絞り込むには、orcldebugop属性を使用して、記録するデバッグ操作を指定します。
表24-4の値のサブセットを構成するには、各コードを加算します。たとえば、ldapbind操作とldapadd操作のデバッグを設定するには、orcldebugopを5 (1 + 4 = 5)に設定します。
表24-4 orcldebugop属性を設定するためのデバッグ操作
| デバッグ操作 | 提供される情報 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
すべてのLDAP操作 |
複数の操作を記録するには、そのディメンションの値を加算します。たとえば、ldapbind(1)、ldapadd(4)およびldapmodify(16)の操作をトレースする場合、orcldebugop属性を21(1 + 4 + 16 = 21)に設定したLDIFファイルを作成します。このLDIFファイルは、次のようになります。
dn: cn=componentname,cn=osdldapd,cn=subconfigsubentry
changetype:modify
replace:orcldebugop
orcldebugop:21
このファイルをロードするには、次のように入力します。
ldapmodify -D "cn=orcladmin" -q -h host_name -p port_number -f file_name
24.3.4 ログ・ファイルへのトレース情報のフラッシュの強制
I/O操作のパフォーマンス・オーバーヘッドを最小限にするため、デバッグ・メッセージは、メッセージがディレクトリ・サーバーに記録されるたびにではなく、定期的にログ・ファイルにフラッシュされます。
ログ・ファイルへの書込みは、次のいずれかの状態が発生した場合に実行されます。
-
LDAP操作が完了したとき
-
優先度の高いメッセージが記録されたとき
-
トレース・メッセージ・バッファが一杯になったとき
ただし、定期的なフラッシュを待たずに、トレース・メッセージが記録されたときにログ・ファイルでそれを検証することもできます。これを行うには、インスタンス固有の構成エントリ属性orcldebugforceflushを1に設定します。次の例に示すとおり、ldapmodifyを使用して、これを行います。
ldapmodifyを使用して強制フラッシュを使用可能にするには:
ノート:
-
強制フラッシュが使用可能な場合、各操作のトレース・メッセージ・オブジェクトの形式は断片化されたものになります。
-
デフォルトでは、強制フラッシュは無効です。必要な情報をログ・ファイルにフラッシュした後は、強制フラッシュを無効にしてください。
関連項目:
orcldebugforceflush属性の詳細は、『Oracle Identity Managementリファレンス』のOracle Identity ManagementのLDAP属性リファレンスに関する項を参照してください