第 5 章
アクセスログおよび接続コードのリファレンス
iPlanet Directory Server 5.1 には、ディレクトリの動作を監視するためにログを提供します。監視することで障害をすばやく検出し修正できるので、起こりうる問題を事前に予測して解決し、障害の発生や性能の低下を未然に防ぐことができます。ディレクトリを効果的に監視するには、ログの構造と内容を理解する必要があります。
この章では、すべてのエラーメッセージについて詳述することはしません (実際には不可能です)。しかし、この章に示された情報は、一般的な問題解決の手掛かりとなります。この章は、次の節で構成されます。
アクセスログの記録を調べても問題が解決しない場合は、iPlanet テクニカルサポートまでお問い合わせください。
http://www.iplanet.com//support_services_10_0.html
アクセスログの内容
iPlanet Directory Server 5.1 のアクセスログには、ディレクトリへのクライアント接続に関する詳しい情報が記録されます。接続とは、同じクライアントからの一連の要求であり、次のものから構成されています。
どの行も、[21/Apr/2001:11:39:51 -0700] のようなタイムスタンプで始まります。この書式は、使用するプラットフォームによって異なります。-0700 は、GMT との時差を示します。接続、接続解除、中断の各レコードは単独で示されますが、それ以外のレコードはすべてサービス要求レコードとそれに続く結果レコードのペアで示されます。この 2 つのレコードは、通常は隣接する行に示されますが、そうでない場合もあります。
この節では、iPlanet Directory Server 5.1 で使用できるアクセスログの各種レベルを示し、次に、デフォルトのアクセスログの内容を説明し、最後に、デフォルト以外のアクセスログレベルの内容を説明します。この節は、次の項目で構成されています。
アクセスログのレベル
アクセスログにはさまざまなレベルがあり、nsslapd-accesslog-level 構成属性の値を変更して、必要なログのタイプを選択できます。デフォルトのログレベルは、エントリへのアクセスを記録するレベル 256 ですが、必要に応じて、以下のログレベルを組み合わせて複数のログレベルを選択できます。
0 = アクセスログを記録しない
4 = 内部アクセス操作を記録する
256 = エントリへのアクセスを記録する
512 = エントリへのアクセスとレフェラルを記録する
131072 = 操作経過時間を正確に測定する。アクセスログの経過時間項目をマイクロ秒単位にする
たとえば、内部アクセス操作、エントリへのアクセス、およびレフェラルを記録する場合は、nsslapd-accesslog-level 構成属性の値を 516 (512+4) に設定します。その他のアクセスログの構成属性については、第 2 章「コアサーバ構成のリファレンス」を参照してください。
デフォルトのアクセスログの内容
この節では、コード例 5-1 に示したデフォルトのアクセスログレベルの抜粋に基づいて、アクセスログの内容を詳細に説明します。
コード例 5-1 デフォルトのアクセスログレベル (レベル 256) でのアクセスログの抜粋
[21/Apr/2001:11:39:51 -0700] conn=11 fd=608 slot=608 connection
from 207.1.153.51 to 192.18.122.139
|
[21/Apr/2001:11:39:51 -0700] conn=11 op=0 BIND dn="cn=Directory
Manager" method=128 version=3
|
[21/Apr/2001:11:39:51 -0700] conn=11 op=0 RESULT err=0 tag=97
nentries=0 etime=0
|
[21/Apr/2001:11:39:51 -0700] conn=11 op=1 SRCH
base="dc=siroe,dc=com" scope=2 filter="(uid=scarter)"
|
[21/Apr/2001:11:39:51 -0700] conn=11 op=1 RESULT err=0 tag=101
nentries=1 etime=1000 notes=U
|
[21/Apr/2001:11:39:51 -0700] conn=11 op=2 UNBIND
|
[21/Apr/2001:11:39:51 -0700] conn=11 op=2 fd=608 closed - U1
|
[21/Apr/2001:11:39:52 -0700] conn=12 fd=634 slot=634 connection
from 207.1.153.51 to 192.18.122.139
|
[21/Apr/2001:11:39:52 -0700] conn=12 op=0 BIND dn="cn=Directory
Manager" method=128 version=3
|
[21/Apr/2001:11:39:52 -0700] conn=12 op=0 RESULT err=0 tag=97
nentries=0 etime=0
|
[21/Apr/2001:11:39:52 -0700] conn=12 op=1 SRCH
base="dc=siroe,dc=com" scope=2 filter="(uid=scarter)"
|
[21/Apr/2001:11:39:52 -0700] conn=12 op=2 ABANDON targetop=1
msgid=2 nentries=0 etime=0
|
[21/Apr/2001:11:39:52 -0700] conn=12 op=3 UNBIND
|
[21/Apr/2001:11:39:52 -0700] conn=12 op=3 fd=634 closed - U1
|
[21/Apr/2001:11:39:53 -0700] conn=13 fd=659 slot=659 connection
from 207.1.153.51 to 192.18.122.139
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=0 BIND dn="cn=Directory
Manager" method=128 version=3
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=0 RESULT err=0 tag=97
nentries=0 etime=0
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=1 EXT
oid="2.16.840.1.113730.3.5.3"
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=1 RESULT err=0 tag=120
nentries=0 etime=0
|
21/Apr/2001:11:39:53 -0700] conn=13 op=2 ADD dn="cn=Sat Apr 21
11:39:51 MET DST 2001, dc=siroe,dc=com"
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=2 RESULT err=0 tag=105
nentries=0 etime=0 csn=3b4c8cfb000000030000
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=3 EXT
oid="2.16.840.1.113730.3.5.5"
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=3 RESULT err=0 tag=120
nentries=0 etime=0
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=4 UNBIND
|
[21/Apr/2001:11:39:53 -0700] conn=13 op=4 fd=659 closed - U1
|
[21/Apr/2001:11:39:55 -0700] conn=14 fd=700 slot=700 connection
from 207.1.153.51 to 192.18.122.139
|
[21/Apr/2001:11:39:55 -0700] conn=14 op=0 BIND dn="" method=sasl
version=3 mech=DIGEST-MD5
|
[21/Apr/2001:11:39:55 -0700] conn=14 op=0 RESULT err=14 tag=97
nentries=0 etime=0, SASL bind in progress
|
[21/Apr/2001:11:39:55 -0700] conn=14 op=1 BIND
dn="uid=coulbeck,dc=siroe,dc=com" method=sasl version=3
mech=DIGEST-MD5
|
[21/Apr/2001:11:39:55 -0700] conn=14 op=1 RESULT err=0 tag=97
nentries=0 etime=0 dn="uid=coulbeck,dc=siroe,dc=com"
|
[21/Apr/2001:11:39:55 -0700] conn=14 op=2 UNBIND
|
[21/Apr/2001:11:39:53 -0700] conn=14 op=2 fd=700 closed - U1
|
|
|
接続番号
すべての外部 LDAP 要求には、サーバの起動直後から conn=0 で始まる増分方式の接続番号 (この例では、conn=11 や conn=28) が記録されます。内部 LDAP 要求は、デフォルトではアクセスログに記録されません。内部アクセス操作のログを記録するには、nsslapd-accesslog-level 構成属性でアクセスログレベル 4 を指定します。
ファイルディスクリプタ
外部 LDAP クライアントから Directory Server への接続ごとに、オペレーティングシステムのファイルディスクリプタまたはソケットディスクリプタを必要とします。この例では fd=608 が該当します。fd=608 は、使用可能なファイルディスクリプタの全プールからファイルディスクリプタ番号 608 が使用されたことを示します。
スロット番号
スロット番号 (この例では slot=608) は、古いバージョンのアクセスログ要素です。これは、ファイルディスクリプタと同じ意味を持ちます。アクセスログのこの要素は無視してください。
操作番号
LDAP 要求を処理するために、Directory Server は必要な一連の操作を実行します。実行中の操作を明確に区別するために、1 つの接続に関するすべての操作要求と操作結果のペアに、op=0 で始まる増分方式の操作番号が割り当てられます。コード例 5-1 では、たとえば、バインド操作の要求と結果のペアに op=0 が割り当てられ、LDAP 検索の要求と結果のペアに op=1 が割り当てられています。アクセスログ内に op=-1 がある場合、通常は、その接続の LDAP 要求は外部 LDAP クライアントが発行したのではなく、内部で発生したものであることを意味しています。
方法の種類
方法の番号 (この例では method=128) は、クライアントが使用した LDAPv3 のバインド方法を示します。バインド方法には、次の 3 つの値があります。
0 = 認証なし
128 = ユーザパスワードによる単純なバインド
sasl = 外部認証メカニズムによる SASL バインド
バージョン番号
バージョン番号 (この例では version=3) は、LDAP クライアントが LDAP サーバとの通信に使用した LDAP のバージョン番号 (LDAPv2 または LDAPv3) を示します。
エラー番号
エラー番号 (この例では err=0) は、実行した LDAP 操作から返された LDAP 結果コードを示します。LDAP のエラー番号 0 は、その操作が正常に終了したことを意味します。その他の LDAP 結果コードについては、「LDAP 結果コード」を参照してください。
タグ番号
タグ番号 (この例では tag=97) は、返された結果のタイプを示します。これは、ほとんどの場合、実行した操作のタイプを表します。使用されるタグは、LDAP プロトコルの BER タグです。よく使用されるタグを次に示します。
tag=97 : クライアントのバインド操作の結果
tag=100 : 検索した実際のエントリを示す
tag=101 : 検索操作の結果
tag=103 : 変更操作の結果
tag=105 : 追加操作の結果
tag=107 : 削除操作の結果
tag=109 : 名前変更または移動操作の結果
tag=111 : 比較操作の結果
tag=115 : 検索を実行するエントリに、要求エントリへのレフェラルが保持されている場合の検索参照を示す。検索参照はレフェラルによって表される
tag=120 : 拡張操作の結果
注
|
tag=100 および tag=115 は、それ自体は結果タグではありません。これらのタグ番号がアクセスログに出現することはほとんどありません。
|
エントリの数
エントリの数 (この例では nentries=0) は、LDAP クライアントの要求にマッチしたエントリの数を示します。
経過時間
経過時間 (この例では etime=1000) は、Directory Server が LDAP 操作の実行にかけた時間を秒単位で示します。etime の値が 0 の場合は、操作の実行にかかった時間がミリ秒単位であったことを示します。アクセスログのこの項目でミリ秒単位の結果を示したい場合は、nsslapd-accesslog-level 構成属性に 131328 (256+131072) を指定します。
LDAP 要求タイプ
LDAP 要求タイプは、LDAP クライアントが発行した LDAP 要求のタイプを示します。この項目には、次の値があります。
SRCH = 検索
MOD = 変更
DEL = 削除
ADD = 追加
MODDN = 名前変更または移動
EXT = 拡張操作
ABANDON = 中断操作
LDAP 応答タイプ
LDAP 応答タイプは、LDAP クライアントが発行した LDAP 応答を示します。この項目には、次の値があります。
RESULT = 結果
ENTRY = エントリ
REFERRAL = レフェラルまたは検索参照
インデックス外検索インジケータ
インデックス外検索インジケータの notes=U は、実行した検索がインデックスになかった、つまり、インデックスファイルではなくデータベース自体を直接検索する必要があったことを示します。検索に使用されるインデックスファイル内で All IDs Threshold に達した場合、インデックスファイルが存在しない場合、またはインデックスファイルの構成方法が検索に必要な方法とは異なっていた場合に、インデックス外検索が発生します。
注
|
インデックス外検索は、一般に多くの時間を必要とするため、多くの場合、インデックス外検索インジケータの etime 値は大きくなります。
|
拡張操作 OID
拡張操作 OID (この例では EXT oid="2.16.840.1.113730.3.5.3" や EXT oid="2.16.840.1.113730.3.5.5") は、実行されている拡張操作の OID を示します。表 5-1 に、iPlanet Directory Server 5.1 でサポートされている LDAPv3 拡張操作とその OID の一覧を示します。
表 5-1 iPlanet Directory Server 5.1 でサポートされている LDAPv3 拡張操作
拡張操作名
|
内容
|
OID
|
iPlanet Directory Server 5.x Start Replication Request (レプリケーション開始要求)
|
レプリケーションの主導側から送信され、レプリケーションセッションが要求されていることを示す
|
2.16.840.1.113730.3.5.3
|
iPlanet Directory Server 5.x Replication Response (レプリケーション応答)
|
Start Replication Request (レプリケーション開始要求) 拡張操作または End Replication Request (レプリケーション終了要求) 拡張操作に対してレプリケーションの応答側から送信される
|
2.16.840.1.113730.3.5.4
|
iPlanet Directory Server 5.x End Replication Request (レプリケーション終了要求)
|
レプリケーションセッションを終了するよう指示するために送信される
|
2.16.840.1.113730.3.5.5
|
iPlanet Directory Server 5.x Replication Entry Request (レプリケーションエントリ要求)
|
エントリとその状態情報 (csn および一意識別子) を送信し、レプリカの初期化に使用される
|
2.16.840.1.113730.3.5.6
|
iPlanet Directory Server 5.x Bulk Import Start (一括インポート開始)
|
インポートする接尾辞とともに一括インポートを要求するためにクライアントから送信され、同時に、一括インポートを開始できることを示すためにサーバから送信される
|
2.16.840.1.113730.3.5.7
|
iPlanet Directory Server 5.x Bulk Import Finished (一括インポート終了)
|
一括インポートの終了を知らせるためにクライアントから送信され、同時に、それを承認するためにサーバから送信される
|
2.16.840.1.113730.3.5.8
|
変更シーケンス番号
変更シーケンス番号 (この例では csn=3b4c8cfb000000030000) は、レプリケーションの変更シーケンス番号であり、この特定の命名コンテキストでレプリケーションが有効になっていることを示します。
中断メッセージ
中断メッセージは、操作が中断されたことを示します。この例では、[21/Apr/2001:11:39:52 -0700] conn=12 op=2 ABANDON targetop=1 msgid=2 nentries=0 etime=0 が該当し、nentries=0 は操作が中断されるまでに送信されたエントリ数、etime=0 は経過した時間 (秒単位) を示し、targetop=1 は、それまでに開始されていた操作 (アクセスログの始めの方に示されている) の値と対応します。
そのメッセージ ID がどの操作が中断されたか特定することに成功したかどうかによって、2 通りの ABANDON メッセージが表示されます。メッセージ ID に示された操作 (targetop) を特定できた場合、ログは上記の例のようになります。一方、メッセージ ID に示された操作を特定できなかった場合、または ABANDON 要求を送信する前に操作がすでに完了していた場合、ログは以下のようになります。
[21/Apr/2001:11:39:52 -0700] conn=12 op=2 ABANDON targetop=NOTFOUND msgid=2
targetop=NOTFOUND は、中断する操作が不明な操作であったか、またはすでに完了していたことを示します。
メッセージ ID
メッセージ ID (この例では msgid=2) は、LDAP SDK クライアントによって生成された LDAP 操作識別子です。メッセージ ID は、iPlanet Directory Server の操作番号とは異なる場合がありますが、同じ操作を示します。このメッセージ ID は、ABANDON 操作に関して使用され、中断しているクライアント操作をユーザに知らせます。
注
|
iPlanet Directory Server の操作番号は 0 から始まります。一方、大部分の LDAP SDK/クライアント実装では、メッセージ ID の番号は 1 から始まります。したがって、多くの場合、メッセージ ID は iPlanet Directory Server の操作番号に 1 を加えたものと同じになります。
|
SASL マルチステージバインドログ
iPlanet Directory Server 5.1 のマルチステージバインドに関するログは、より明確になりました。バインドプロセスの各段階が記録され、該当する場合は、「SASL bind in progress」というメッセージも記述されます。
注
|
また、認証 DN (アクセス制御の判別に使用される DN) は、BIND 結果行に記録されるようになり、以前のように BIND 要求行には記録されません。
[21/Apr/2001:11:39:55 -0700] conn=14 op=1 RESULT err=0
tag=97 nentries=0 etime=0
dn="uid=coulbeck,dc=siroe,dc=com"
SASL バインドでは、BIND 要求行に表示される DN 値はサーバでは使用されないので、この値は SASL バインドとは関係ありません。ただし、認証 DN が、SASL バインドで監査のために使用する必要がある DN の場合は、これを明確に記録することが不可欠です。この認証 DN をBIND 結果行に記録しておくと、どちらの DN であるのか混乱しないで済みます。
|
デフォルト以外のアクセスログレベルでのアクセスログの内容
この節では、iPlanet Directory Server 5.1 のアクセスログで使用できる、デフォルト以外のアクセスログレベルについて説明します。
コード例 5-2 では、エントリへのアクセスとレフェラルを記録するアクセスログレベル 512 が選択されています。この例では、太字で示された検索要求に対して、6 つのエントリと 1 つのレフェラルが返されています。
コード例 5-2 エントリアクセスとレフェラルのログレベル (レベル 512) でのアクセスログの抜粋
[12/Jul/2001:16:43:02 +0200] conn=306 op=0 ENTRY dn="ou=Special
Users,dc=siroe,dc=com"
|
[12/Jul/2001:16:43:02 +0200] conn=306 op=0 ENTRY
dn="cn=Accounting Managers,ou=groups,dc=siroe,dc=com"
|
[12/Jul/2001:16:43:02 +0200] conn=306 op=0 ENTRY dn="cn=HR
Managers,ou=groups,dc=siroe,dc=com"
|
[12/Jul/2001:16:43:02 +0200] conn=306 op=0 ENTRY dn="cn=QA
Managers,ou=groups,dc=siroe,dc=com"
|
|
コード例 5-3 では、内部操作を記録するアクセスログレベル 4 が選択されています。
コード例 5-3 内部アクセス操作レベル (レベル 4) でのアクセスログの抜粋
[12/Jul/2001:16:45:46 +0200] conn=Internal op=-1 SRCH
base="cn=\22dc=siroe,dc=com\22,cn=mapping tree,cn=config"scope=0
filter="objectclass=nsMappingTree"attrs="nsslapd-referral"
options=persistent
|
12/Jul/2001:16:45:46 +0200] conn=Internal op=-1 RESULT err=0
tag=48 nentries=1etime=0
|
[12/Jul/2001:16:45:46 +0200] conn=Internal op=-1 SRCH
base="cn=\22dc=siroe,dc=com\22,cn=mapping tree,cn=config"
scope=0 filter="objectclass=nsMappingTree" attrs="nsslapd-state"
|
[12/Jul/2001:16:45:46 +0200] conn=Internal op=-1 RESULT err=0
tag=48 nentries=1etime=0
|
|
アクセスログレベル 4 では、内部操作を記録できます。実行中の検索、検索ベース、適用範囲、フィルタ、および要求された検索属性が記録されます。
接続の説明
接続の説明は、この例では conn=Internal であり、その接続が内部接続であることを示しています。操作番号 op=-1 は、操作が内部で開始されたことを示します。
オプションの説明
オプションの説明は、この例では options=persistent であり、永続検索が実行されていることを示しています。永続検索は、監視の一形態として利用できます。永続検索では、特定の構成に変更が生じたときに、その変更内容を返すように設定できます。
注
|
iPlanet Directory Server 5.1 のアクセスログでは、永続検索と通常の検索を区別できます。以前の iPlanet Directory Server リリースでは、これを区別できませんでした。
|
コード例 5-4 では、アクセスログレベル 512 と 4 の両方が選択されており、エントリアクセスとレフェラルに加えて、内部アクセス操作も記録されます。
コード例 5-4 内部アクセス操作、エントリアクセス、およびレフェラルのログレベル (レベル 4+512) でのアクセスログの抜粋
[12/Jul/2001:16:45:46 +0200] conn=Internal op=-1 ENTRY
dn="cn=\22dc=siroe,dc=com\22, cn=mapping tree, cn=config"
|
[12/Jul/2001:16:45:46 +0200] conn=Internal op=-1 ENTRY
dn="cn=\22dc=siroe,dc=com\22, cn=mapping tree, cn=config"
|
|
共通の接続コード
接続コードは、接続解除に関する追加情報を提供するために closed ログメッセージに追加されるコードです。共通の接続コードは次のとおりです。
A1 = クライアントが接続を中断した
B1 = 破損した BER タグが検出された
受信時に BER タグ (ネットワーク上で送信されるデータをカプセル化するタグ) が破損していた場合は、B1 接続コードがアクセスログに記録されます。BER タグは、物理層のネットワークの問題や、すべての要求結果を受け取る前に LDAP クライアントを中断するなどの誤った LDAP クライアント操作が原因で破損することがあります。
B2 = BER タグが nsslapd-maxbersize 属性値よりも長い。この構成属性については、「nsslapd-maxbersize (メッセージの最大サイズ)」を参照
B3 = 破損した BER タグが検出された
B4 = サーバがデータ応答をクライアントにフラッシュバックできなかった
P2 = 解除された接続または破損した接続が検出された
T1 = 指定したアイドル接続のタイムアウト時間内にクライアントが結果を受け取らなかった
T2 = IO ブロックのタイムアウト時間が経過したためにサーバが接続を解除した
U1 = クライアントが UNBIND 要求を送信したためにサーバが接続を解除した。サーバは、UNBIND 要求を検出すると、必ずその接続を解除する
LDAP 結果コード
LDAP の一連の結果コードを知っておくと役に立ちます。
結果コード
|
定義された値
|
0
|
SUCCESS
|
1
|
OPERATION_ERROR
|
2
|
PROTOCOL_ERROR
|
3
|
TIME_LIMIT_EXCEEDED
|
4
|
SIZE_LIMIT_EXCEEDED
|
5
|
COMPARE_FALSE
|
6
|
COMPARE_TRUE
|
7
|
AUTH_METHOD_NOT_SUPPORTED
|
8
|
STRONG_AUTH_REQUIRED
|
9
|
LDAP_PARTIAL_RESULTS
|
10
|
REFERRAL (LDAP v3)
|
11
|
ADMIN_LIMIT_EXCEEDED (LDAP v3)
|
12
|
UNAVAILABLE_CRITICAL_EXTENSION (LDAP v3)
|
13
|
CONFIDENTIALITY_REQUIRED (LDAP v3)
|
14
|
SASL_BIND_IN_PROGRESS
|
16
|
NO_SUCH_ATTRIBUTE
|
17
|
UNDEFINED_ATTRIBUTE_TYPE
|
18
|
INAPPROPRIATE_MATCHING
|
19
|
CONSTRAINT_VIOLATION
|
20
|
ATTRIBUTE_OR_VALUE_EXISTS
|
21
|
INVALID_ATTRIBUTE_SYNTAX
|
32
|
NO_SUCH_OBJECT
|
33
|
ALIAS_PROBLEM
|
34
|
INVALID_DN_SYNTAX
|
35
|
IS_LEAF
|
36
|
ALIAS_DEREFERENCING_PROBLEM
|
48
|
INAPPROPRIATE_AUTHENTICATION
|
49
|
INVALID_CREDENTIALS
|
50
|
INSUFFICIENT_ACCESS_RIGHTS
|
51
|
BUSY
|
52
|
UNAVAILABLE
|
53
|
UNWILLING_TO_PERFORM
|
54
|
LOOP_DEFECT
|
64
|
NAMING_VIOLATION
|
65
|
OBJECT_CLASS_VIOLATION
|
66
|
NOT_ALLOWED_ON_NONLEAF
|
67
|
NOT_ALLOWED_ON_RDN
|
68
|
ENTRY_ALREADY_EXISTS
|
69
|
OBJECT_CLASS_MODS_PROHIBITED
|
71
|
AFFECTS_MULTIPLE_DSAS (LDAP v3)
|
80
|
OTHER
|
81
|
SERVER_DOWN
|
85
|
LDAP_TIMEOUT
|
89
|
PARAM_ERROR
|
91
|
CONNECT_ERROR
|
92
|
LDAP_NOT_SUPPORTED
|
93
|
CONTROL_NOT_FOUND
|
94
|
NO_RESULTS_RETURNED
|
95
|
MORE_RESULTS_TO_RETURN
|
96
|
CLIENT_LOOP
|
97
|
REFERRAL_LIMIT_EXCEEDED
|