ログ・エントリの書式

ここでは、Endeca Serverログ・エントリの書式(メッセージ・タイプやログ・レベルを含む)について説明します。

エラー・メッセージの例として、存在しないデータ・ドメイン(testのスペルをtextに間違えるなど)でdisable-ddコマンドを使用するとします。このコマンドが失敗し、次のようにコマンド・ウィンドウにエラーが表示されます。
C:\Oracle\Middleware\EndecaServer7.6.0\endeca-cmd>endeca-cmd disable-dd text
SEVERE: Error while invoking endpoint "http://localhost:7001/endeca-server/ws/manage" 
from client endeca-cmd encountered a problem.
caused by:
The Endeca Server returned an error: OES-000095: No such data domain: text
caused by:
OES-000095: No such data domain: text
  OES-000095: No such data domain: text
また、(例外情報を含む)エラー全部が、AdminServer-diagnostic.logファイルに次の書式で記録されます。
[2013-10-21T16:31:16.384-04:00] [AdminServer] [ERROR] [OES-000066] [com.endeca.opmodel.ws.ManagePortImpl]
[tid: [ACTIVE].ExecuteThread: '34' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] 
[ecid: 0000K7ShiBy9lZZ_TlDCic1IPOwH000001,0:1] [WEBSERVICE_PORT.name: managePort] 
[APP: oracle.endecaserver#1.0@7.6.0.0.0] [J2EE_MODULE.name: endeca-server] [WEBSERVICE.name: manage] 
[J2EE_APP.name: oracle.endecaserver_1.0@7.6.0.0.0] OES-000066: Service error: 
com.endeca.cluster.ClusterException$NoSuchDataDomainException: 
OES-000095: No such data domain: text com.endeca.cluster.ClusterException$NoSuchDataDomainException: 
OES-000095: No such data domain: text[[
	at com.endeca.cluster.Cluster.setDataDomainEnabled(Cluster.java:534)
	at com.endeca.opmodel.ws.ManagePortImpl.disableDataDomain(ManagePortImpl.java:418)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
 ...
	at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
]]
メッセージ内の各フィールドは、次の属性にマップされます。
ログ・エントリ・フィールド 意味
[2013-10-21T16:31:16.384-04:00] メッセージが生成された日時を示すタイムスタンプ。
[AdminServer] 開始コンポーネント(Weblogic管理サーバー)の組織ID。
[ERROR] ODLメッセージ・タイプ。使用可能な値は、次の表を参照してください。
[OES-000095] コンポーネント内でメッセージを一意に識別するメッセージID。

IDの先頭には(コンポーネントを表す)OESが付き、その後にダッシュと数字が続きます。

[com.endeca.opmodel.ws.ManagePortImpl] メッセージを開始したEndeca Serverコンポーネントを識別するコンポーネントID。
[tid: [ACTIVE].ExecuteThread: '34' for queue: 'weblogic.kernel.Default (self-tuning)'] メッセージを生成したスレッドのID。
[userId: <anonymous>] メッセージを生成した実行コンテキストを所有するユーザーの名前。
[ecid: 0000K7ShiBy9lZZ_TlDCic1IPOwH000001,0:1] 開始コンポーネントが参加する特定のリクエストの実行のグローバルな一意の識別子である、実行コンテキストID (ECID)。
[WEBSERVICE_PORT.name: managePort] イベントに関するコンポーネント固有の属性を含むサプリメンタル属性。
[APP: oracle.endecaserver_1.0@7.6.0.0.0] Endeca ServerアプリケーションのアプリケーションID。
[J2EE_MODULE.name: endeca-server] イベントに関するコンポーネント固有の属性を含むサプリメンタル属性。
[WEBSERVICE.name: manage] イベントに関するコンポーネント固有の属性を含むサプリメンタル属性。
[J2EE_APP.name: oracle.endecaserver_1.0@7.6.0.0.0] イベントに関するコンポーネント固有の属性を含むサプリメンタル属性。
[OES-000066: Service error: ...] メッセージ・テキスト。エラー・メッセージのテキスト。

メッセージのタイプおよびレベル

Endeca Server用のWebLogicログ出力を構成するには、ログ・ファイルに書き込まれる情報の量とタイプを、メッセージのタイプおよびレベルとして指定します。各メッセージ・タイプについて、メッセージ・レベルに使用可能な値は1 (最も高い重大度)から32 (最も低い重大度)までです。通常指定が必要なのは、タイプのみです(レベルを指定する必要はありません)。

タイプを指定すると、WebLogicではそのタイプのすべてのメッセージと、それより重大度の高いメッセージが返されます。たとえば、メッセージ・タイプをWARNINGに設定した場合、WebLogicではタイプERRORのメッセージも返されます。

以降に、メッセージ・タイプ、各タイプに最もよく使用されるレベル、およびODLとJavaのログ・レベルのマッピングを示します。
ODLのメッセージ・タイプ メッセージ・レベル Javaのメッセージ・タイプ 説明
ERROR 1 SEVERE 管理者の即時の注意を必要とする、製品の不具合が原因ではない重大な問題。
WARNING 1 WARNING 管理者が確認する必要のある潜在的な問題。
NOTIFICATION 1 INFO 主要なライフサイクル・イベント(主なサブコンポーネントまたは機能のアクティブ化や非アクティブ化など)。レベル1は、NOTIFICATIONのデフォルト・レベルです。
NOTIFICATION 16 CONFIG 通常のイベントをレポートするための細かい細分化レベル。
TRACE 1 FINE 管理者にとって重要なイベントのトレース情報またはデバッグ情報(パブリックなAPIエントリ・ポイントや終了ポイントなど)。
TRACE 16 FINER Oracleサポートが特定のサブシステムに関する問題を診断する際に役立つ、詳細なトレース情報またはデバッグ情報。
TRACE 32 FINEST Oracleサポートが特定のサブシステムに関する問題を診断する際に役立つ、非常に詳細なトレース情報またはデバッグ情報。
レベル1のタイプのERRORWARNINGおよびNOTIFICATIONは、パフォーマンスに影響しません。その他のタイプおよびレベルでのパフォーマンスの影響は次のとおりです。
  • NOTIFICATION、レベル16: 最小のパフォーマンス影響。
  • TRACE、レベル1: 小さいパフォーマンス影響。本番環境でこのレベルを時々有効にして、問題をデバッグできます。
  • TRACE、レベル16: 大きいパフォーマンス影響。このレベルは、問題のデバッグを目的とした特殊な状況を除いて、本番環境では有効にしないでください。
  • TRACE、レベル32: 非常に大きいパフォーマンス影響。本番環境では、このレベルを有効にしないでください。これは、テスト環境または開発環境で製品をデバッグする際に使用するためのものです。