ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Identity Manager管理者ガイド
11g リリース1 (11.1.1)
B62264-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

8 システム・ロギングの有効化

Oracle Identity Managerでは、2つのロギング・サービス、大多数のOracle Fusion Middlewareアプリケーションで使用されるロギング・サービスOracle Diagnostic Logging (ODL)とApache log4jが使用されます。

Oracle Identity Manager のロギングは、主としてODLを使用して行われます。Apache log4jは、デプロイメント・マネージャやワークフロー・デザイナでのNexaweb、キャッシングでのOSCacheなど、サードパーティ・アプリケーションでのみ使用されます。

この章の内容は次のとおりです。

8.1 ODLを使用したOracle Identity Managerのロギング

Oracle Diagnostic Logging (ODL)は、Oracle Identity Managerが使用する主要なロギング・サービスです。ODLロギングを動作させるには、ロガーとログ・ハンドラの両方を構成する必要があります。ロガーはハンドラにメッセージを送信し、ハンドラはメッセージを受け入れてログ・ファイルに出力します。

「ログ・ハンドラとロガーの構成」で説明しているように、ロギング構成はlogging.xmlファイルによって制御されます。このファイルは、直接編集することも、Enterprise Managerを介して編集することもできます。Enterprise Managerでは、OIMサーバー・リンクをクリックして上部のWeblogic Serverドロップダウンを選択し、「ログ」→「ログ構成」をクリックしてロギング構成にアクセスできます。

Enterprise Managerでロギング構成にアクセスするには、次の手順を実行します。

  1. OIMサーバー・リンクをクリックします。

  2. Weblogic Serverのリストから、「ログ」→「ログ構成」を選択します。ログ構成画面に、ロギングに利用できるすべてのパッケージが表示されます。

Enterprise Managerで利用できない追加パッケージ(コネクタのためのパッケージなど)のロギングは、次の指示に従ってlogging.xmlファイルを手動で編集します。Oracle Identity Manager固有のパッケージには、oracle.iamからアクセスできます。Oracle Diagnostic Loggingレベル列で、各ログ・レベルを選択できます。特定のログ・レベルを選択し、「適用」をクリックして変更を適用します。また、「ログ・ファイル」タブをクリックして、新しいログ・ハンドラを作成して構成することもできます。

Oracle Identity Managerの各モジュールには、個別に構成できる独自のロガーがあり、それぞれ異なる情報量を1つ以上のログ・ハンドラに送信できます。表8-2「Oracle Identity Managerのロガー」に、ログ・ハンドラへのメッセージ送信を構成できるOracle Identity Managerの20種類以上のロガーを示します。

ログに出力する情報量は、各ロガーのレベル属性を調整して制御できます。ロギング・レベルを選択するには、5つのメッセージ・タイプ(INCIDENT_ERROR、ERROR、WARNING、NOTIFICATION、TRACE)からいずれか1つを選びます。各メッセージ・タイプで1(最高重大度) - 32(最低重大度)の数値を使用して、ロガーで出力されるメッセージ量をさらに制限することもできます。2ページの表1に、最もよく使用されるメッセージ・タイプとレベルの組合せを示します。

ログ・ハンドラは、ログ・メッセージを表示するターゲットを指定します。たとえば、コンソール、各種ログ・ファイルおよび追加の出力にメッセージを書き込むことができます。

この項には次のトピックが含まれます:

8.1.1 メッセージのタイプとレベル

ODLでは、INCIDENT_ERROR、ERROR、WARNING、NOTIFICATION、TRACEの5つのメッセージ・タイプを認識します。各メッセージ・タイプで1(最高重大度) - 32(最低重大度)の数値を使用して、メッセージ出力をさらに制限することもできます。

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

メッセージのタイプとレベルの詳細は、『Oracle Fusion Middleware管理者ガイド』の「ログ・ファイルに書き込まれる情報レベルの設定」を参照してください。表8-1に、Oracle Identity Managerで最もよく使用される診断メッセージのタイプを示します。

表8-1 Oracle Identity Managerの診断メッセージのタイプ

メッセージ・タイプおよび数値 説明

INCIDENT_ERROR:1

製品の不具合が原因の可能性があり、Oracleサポートに報告する必要がある重大な問題。

この例として、回復不能なエラーがあります。

ERROR:1

管理者が即時に注目する必要があり、製品の不具合が原因でない重大な問題。

この例として、Oracle Fusion Middlewareがログ・ファイルを処理できないものの、ドキュメントに対する権限の調整によって問題の修正が可能な場合などがあります。

WARNING:1

管理者が確認する必要のある潜在的な問題。

この例として、パラメータ値が無効な場合や指定したファイルが存在しない場合などがあります。

NOTIFICATION:1

主要サブコンポーネントや機能のアクティブ化または非アクティブ化などの、主要なライフサイクル・イベント。

これはNOTIFICATIONのデフォルト・レベルです。

NOTIFICATION:16

正常なイベントをレポートするためのより詳細なレベル。

TRACE:1

パブリックAPIエントリや出口点など、管理者に重要なイベントに関するトレースまたはデバッグ情報。

TRACE:16

Oracleサポートが特定のサブシステムでの問題を診断するのに役立つ可能性のある、詳細なトレースまたはデバッグ情報。

TRACE:32

Oracleサポートが特定のサブシステムでの問題を診断するのに役立つ可能性のある、非常に詳細なトレースまたはデバッグ情報。


8.1.2 ログ・ハンドラとロガーの構成

ログ・ハンドラとロガーはどちらもlogging.xmlを編集して構成できます。このファイルは次の場所に格納されています。

DOMAIN_NAME/config/fmwconfig/servers/SERVER_NAME/logging.xml

ここで、DOMAIN_NAMESERVER_NAMEは、それぞれOracle Identity Managerのインストール時に指定されたドメイン名とサーバー名です。

logging.xmlファイルには<log_handlers>構成セクションがあり、その下に<loggers>構成セクションが続きます。各ログ・ハンドラを、<log_handlers>セクションで定義し、各ロガーを<loggers>セクションで定義します。

ファイルの基本構造は次のとおりです。

<logging configuration>
  <log_handlers>
    <log_handler name='console-handler' level="NOTIFICATION:16"></log_handler>
    <log_handler name='odl-handler'></log_handler>
    <!--Additional log_handler elements defined here....-->
  </log_handlers>
  <loggers>
    <logger name="example.logger.one" level="NOTIFICATION:16">
      <handler name="console-handler"/>
    </logger>
    <logger name="example.logger.two" />
    <logger name="example.logger.three" />
    <!--Additional logger elements defined here....-->
  </loggers>
</logging_configuration>

メッセージをコンソールかファイルのどちらかに書き込むようにロガーを構成する場合は、ロガーとハンドラの両方の構成変更を行います。ロガーでのレベル属性の設定は、ロガーがハンドラに送信する詳細の量(つまりメッセージ量)を構成します。同様に、ハンドラでのレベル属性の設定は、ハンドラがロガーから受け入れる詳細の量を構成します。


注意:

ログに期待する量のメッセージが出力されない場合は、ロガーとログ・ハンドラのレベル属性が適切に設定されているか確認してください。たとえば、ロガーがTRACEに設定され、ログ・ハンドラがWARNに設定されている場合、ハンドラはWARNより詳細なメッセージは生成しません。


8.1.3 ログ・ハンドラの構成

個々のログ・ハンドラは、logging.xmlファイルの<log_handlers>セクションで構成されます。ハンドラのレベル属性を構成して、ハンドラがロガーから受け入れる詳細の量を設定します。

ログ・ハンドラのレベル属性を構成するには:


注意:

logging.xmlファイルを修正するには、XML構文の基本を理解している必要があります。


  1. DOMAIN_NAME/config/fmwconfig/servers/SERVER_NAME/logging.xmlファイルを開きます。

  2. レベル属性を次の例に示すように変更します。

    このXMLコード例では、console-handlerのレベル属性はWARNING:32に設定されています。

    <log_handler name='console-handler' class='oracle.core.ojdl.logging.ConsoleHandler' formatter='oracle.core.ojdl.weblogic.ConsoleFormatter' level='WARNING:32'/>
    

    console-handlerがコンソールにTRACEレベルのメッセージを書き込めるようにするには、レベル属性を次のように変更します。

    <log_handler name='console-handler' class='oracle.core.ojdl.logging.ConsoleHandler' formatter='oracle.core.ojdl.weblogic.ConsoleFormatter' level='TRACE:1'/>
    
  3. 変更を保存して、アプリケーション・サーバーを再起動します。

8.1.3.1 ログ・ハンドラの構成ツール

ファイルに書き込むログ・ハンドラには、構成可能な追加プロパティがあります。たとえば、次に示すlogging.xmlからの抜粋では、odl-handlerのプロパティが構成されています。

<log_handler name='odl-handler' class='oracle.core.ojdl.logging.ODLHandlerFactory'     filter='oracle.dfw.incident.IncidentDetectionLogFilter'>
    <property name='path'     value='${domain.home}/servers/${weblogic.Name}/logs/${weblogic.Name}-diagnostic.log'/>
    <property name='maxFileSize' value='10485760'/>
    <property name='maxLogSize' value='104857600'/>
    <property name='encoding' value='UTF-8'/>
    <property name='useThreadName' value='true'/>
    <property name='supplementalAttributes' value='J2EE_APP.name,J2EE_MODULE.name,     WEBSERVICE.name,WEBSERVICE_PORT.name,composite_instance_id,component_instance_id,     composite_name,component_name'/>
</log_handler>

ログ・ハンドラのプロパティは、Fusion Middleware ControlツールまたはWLSTコマンド行ツールを使用して変更できます。


関連項目:

  • Fusion Middleware ControlツールおよびWLSTコマンド行ツールの詳細は、『Oracle Fusion Middleware管理者ガイド』の「ログ・ファイルの設定の構成」を参照してください。

  • WLSTコマンド行ツールの詳細は、Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンスのカスタムWLSTコマンドのロギングに関する項を参照してください。


8.1.4 ロガーの構成

各ログ・ハンドラは、logging.xmlファイルの<loggers>セクションで構成されます。ログ・ハンドラにメッセージを送信するために構成できる、20種類を超えるOracle Identity Managerのロガーがあります。Oracle Identity Managerのロガーについては、7ページの表2で説明されています。ロガーのレベル属性の設定で、ロガーがハンドラに送信する詳細の量(つまりメッセージ量)が構成されます。1つ以上の<handler>要素を<logger>要素内にネストすると、ロガーにハンドラが割り当てられます。OIMCP.PSFTCOMMONと呼ばれるロガーを次の抜粋に示します。level属性にはWARNING:32が設定され、ロガーによって3つのハンドラにメッセージが送信されます。

<logger name="OIMCP.PSFTCOMMON" level="WARNING:32" useParentHandlers="false">
<handler name="odl-handler"/>
<handler name="wls-domain"/>
<handler name="console-handler"/>
</logger>

ロガーは、親のレベル設定やその他の属性、親のロガーのハンドラなど、親のロガーの設定を継承します。継承を無効にするには、前述の抜粋に示すように、useParentHandlers属性を「false」に設定します。

ロガーの継承ツリーの最上部にあるのがルート・ロガーです。ルート・ロガーは、次の例に示すように、名前属性が空のロガーです。

<loggers>
    <logger name="" level="WARNING:1">
      <handler name="odl-handler"/>
      <handler name="wls-domain"/>
      <handler name="console-handler"/>
    </logger>

    <!-- Additional loggers listed here -->
</loggers>

次の例に示すように、ロガーを名前属性のみで構成すると、ロガーは残りの属性をルート・ロガーから継承します。

<loggers>
    <logger name="oracle.iam.identity.rolemgmt"/>
    <!-- Additional loggers listed here -->
</loggers>

ロガーを構成するには:

  1. DOMAIN_NAME/config/fmwconfig/servers/SERVER_NAME/logging.xmlファイルを開きます。

  2. 構成するロガーに移動します。表8-2に、Oracle Identity Managerのロガーのリストを示します。

    表8-2 Oracle Identity Managerのロガー

    ロガー 説明
    oracle.iam.request
    oracle.iam.requestdatasetgeneration
    oracle.iam.requestactions
    oracle.iam.platform.workflowservice
    

    リクエストおよびリクエスト・データセット管理に関連するイベントを記録します。

    oracle.iam.requesttemplate
    

    リクエスト・テンプレート管理に関連するイベントを記録します。

    oracle.iam.selfservice
    

    認証済および未認証のセルフサービス操作に関連するイベントを記録します。

    oracle.iam.ChangePasswordtaskflow
    

    パスワード変更機能のUIのイベントを記録します。

    oracle.iam.forgotpasswordtaskflow
    

    パスワード忘れ機能のUIのイベントを記録します。

    oracle.iam.identitytaskflow
    

    管理UIのアイデンティティ操作のイベントを記録します。

    oracle.iam.identity.orgmgmt
    

    組織マネージャのサービス操作に関連するイベントを記録します。

    oracle.iam.identity.rolemgmt
    

    ロール・マネージャのサービス操作に関連するイベントを記録します。

    oracle.iam.identity.usermgmt
    

    ユーザー・マネージャのサービス操作に関連するイベントを記録します。

    oracle.iam.identity.scheduledtasks
    

    アイデンティティ機能のスケジュールされたタスクに関連するイベントを記録します。

    oracle.iam.platform.utils
    

    プラットフォームで提供されるユーティリティ(主に他の機能で使用される)に関連するイベントを記録します。メッセージ・リソース処理、ロギング処理、国際化、キャッシングなどのユーティリティが含まれます。

    oracle.iam.platformservice
    

    主にクライアント側から実行されるユーティリティに関連するイベントを記録します。たとえば、プラグイン登録ユーティリティやキャッシュの消去ユーティリティなどがあります。日付と時間ユーティリティや例外処理ユーティリティなどの一部のサーバー側ユーティリティでも、このロガーが使用されます。

    oracle.iam.platform.canonic
    

    UIフレームワークの実行に関連するイベントを記録します。

    oracle.iam.consoles.faces
    oracle.iam.consoles.common
    

    UIフレームワークから生成されるメッセージを記録します。

    oracle.iam.platform.kernel
    

    カーネルに関連するイベントを記録します。これには、プラットフォームによって編成の処理中に生成されるログを含みます。各機能内の編成で実行されるイベント・ハンドラには、その機能独自のロガーが使用されます。

    oracle.iam.platform.context
    

    コンテキスト管理機能に関連するイベントを記録します。

    oracle.iam.platform.entitymgr
    

    エンティティ・マネージャ機能に関連するイベントを記録します。この機能は、ユーザー、ロールなど、各種エンティティ・タイプの一般的な処理と、それらに対する個別操作への適切なルーティングを提供します。

    oracle.iam.scheduler
    oracle.iam.platform.scheduler
    Xellerate.Scheduler
    Xellerate.Scheduler.Task
    

    スケジューラに関連するイベントを記録します。スケジュール済タスクのなかには、別のロガーも使用する場合があることに注意してください。

    oracle.iam.reconciliation
    

    リコンシリエーション機能に関連するイベントを記録します。

    oracle.iam.accesspolicy
    

    アクセス・ポリシー機能に関連するイベントを記録します。

    oracle.iam.autoroles
    

    ロール・メンバーシップの自動割当て機能に関連するイベントを記録します。

    oracle.iam.callbacks
    

    コールバック機能に関連するイベントを記録します。

    oracle.iam.configservice
    

    エンティティ属性の構成に使用される構成サービスAPIに関連するイベントを記録します。

    oracle.iam.ldap-sync
    

    Oracle Identity ManagerおよびLDAP同期化機能に関連するイベントを記録します。

    oracle.iam.notification
    

    電子メール・テンプレートおよび通知処理機能に関連するイベントを記録します。

    oracle.iam.passwdmgnt
    

    パスワード管理機能に関連するイベントを記録します。

    oracle.iam.platform.pluginframework
    

    プラグインの管理を処理するプラグイン・フレームワーク機能からのイベントを記録します。

    oracle.iam.platform.async
    

    非同期操作を処理するプラットフォームからのイベントを記録します。

    oracle.iam.spmlws
    oracle.iam.wsschema
    

    各種操作のリクエストを生成するFusionアプリケーションで使用されるWebサービスに関連するイベントを記録します。

    oracle.iam.diagnostic
    

    診断チェックを実行するために使用される診断サービスAPIからのメッセージを記録します。

    oracle.iam.oimdataproviders
    

    Oracle Identity Managerのデータ・プロバイダに関連するイベントを記録します。Oracle Identity Managerのデータ・プロバイダは、Oracle Identity Managerデータベースのデータの更新や取得のためのコードを提供します。

    Xellerate.Database
    

    データベース操作を記録します。

    Xellerate.PreparedStatement
    

    Xellerate.Databaseと同じですが、PreparedStatementの詳細のみを記録します。

    Xellerate.Performance
    

    文(問合せ)を実行する時間、またはデータやメタデータを取得するために結果セットを繰り返す時間など、データベースのパフォーマンスを記録します。

    oracle.iam.platform.auth
    

    認証処理機能のイベントを記録します。

    oracle.iam.platform.authz
    oracle.iam.authzpolicydefn
    

    認可ポリシーを処理する機能のイベントを記録します。

    oracle.iam.sod
    Xellerate.SoD
    

    SoD(職務の分離)に関連するイベントを記録します。

    oracle.jps
    

    組込みのOracle Entitlements Server MicroSMエンジン用のロガーです。ログ・ファイルは、管理対象サーバー名-microsm.log(例: OIMServer1-microsm.log)という名前でOIM_ORACLE_HOMEフォルダに作成されることに注意してください。

    Xellerate.Entitlement
    

    プロビジョニング権限に使用される権限操作のロギングを提供します。

    oracle.iam.conf
    

    システム・プロパティの処理を含むシステム構成サービス機能に関連するイベントを記録します。

    oracle.iam.transUI
    

    11gコードからのレガシーAPIの初期化を処理するトランザクションUI機能に関連するイベントを記録します。これには、ユーザー作成時のプロビジョニングの初期化などの操作が含まれます。

    Xellerate.AccountManagement
    

    レガシーのユーザー操作APIでのロギングを提供します。

    Xellerate.Server
    

    データ・オブジェクトでのロギングを提供します。

    Xellerate.ResourceManagement
    Xellerate.ObjectManagement
    

    リソース・オブジェクト操作のロギングを提供します。

    Xellerate.Workflow
    

    プロビジョニング・プロセス操作のロギングを提供します。

    Xellerate.WebApp
    

    移行のUI操作のロギングを提供します。

    Xellerate.Adapters
    

    アダプタ・ファクトリのロギングを提供します。

    Xellerate.JavaClient
    

    クライアント側データ・オブジェクトのロギングを提供します。

    Xellerate.Policies
    

    アクセス・ポリシーに関連するデータ・オブジェクトのロギングを提供します。

    Xellerate.Rules
    

    ルールに関連するデータ・オブジェクトのロギングを提供します。

    Xellerate.APIs
    

    レガシーのパブリックAPIのロギングを提供します。

    Xellerate.JMS
    

    メッセージを生成するJMS操作のロギングを提供します。

    Xellerate.RemoteManager
    

    Remote Managerでのロギングを提供します。

    Xellerate.Auditor
    

    監査フレームワークでのロギングを提供します。

    Xellerate.Attestation
    

    アテステーションのUIおよび操作でのロギングを提供します。

    Xellerate.GC.StartUp
    Xellerate.GC.ProviderRegistration
    Xellerate.GC.ImageGeneration
    Xellerate.GC.FrameworkProvisioning
    Xellerate.GC.Provider.ProvisioningFormat
    Xellerate.GC.Provider.ProvisioningTransport 
    Xellerate.GC.FrameworkReconciliation Xellerate.GC.Provider.Reconciliation
    Format
    Xellerate.GC.Provider.Validation
    Xellerate.GC.Provider.Transformation
    Xellerate.GC.Model 
    Xellerate.GC.Server
    

    汎用テクノロジ・コネクタ(GTC)のロギングを提供します。

    oracle.iam.connectors.icfcommon
    

    コネクタ・フレームワークのロギングを提供します。


  3. <logger>要素のレベル属性を定義します。この項の先頭の例を参照してください。

  4. 1つ以上の<handler>要素を<logger>要素に追加します。

  5. logging.xmlの<loggers>と<log_handlers>の両方のセクションの編集が終了したら、ファイルを保存します。

  6. アプリケーション・サーバーを再起動して変更を有効にします。

8.1.5 ODLログ出力のサンプル

次のODLログの抜粋は、想定される出力例を示しています。

<Jun 15, 2010 2:01:20 AM IST> <Error> <oracle.iam.platform.authz.impl>
<IAM-1010032> 
<No OES Policy found for the given Action.>
<Jun 15, 2010 2:02:02 AM IST> <Warning> <oracle.iam.platform.canonic.agentry>
<IAM-0091108> <readme.txt is not a valid connector resource file.>
<Jun 15, 2010 2:02:52 AM IST> <Error> <oracle.iam.configservice.impl>
<IAM-3020003> <The attribute User Type does not exist!>

ログ出力の管理および解釈の詳細は、『Oracle Fusion Middleware管理者ガイド』の「ログ・ファイルと診断データの管理」を参照してください。

8.2 log4jを使用したOracle Identity Managerのロギング

Apache log4jは、デプロイメント・マネージャやワークフロー・デザイナでのNexaweb、およびキャッシングでのOSCacheなどのサードパーティ製アプリケーションで使用されます。log4j構成ファイルは次の場所に格納されています。

OIM_HOME/config/log.properties

log4jを使用したOracle Identity Managerでのロギングについて、次の各項で説明します。

8.2.1 ログ・レベル

表8-3に、log4jのログ・レベルのリストを示します。

表8-3 log4jのログ・レベル

ログ・レベル 説明

DEBUG

DEBUGレベルは、アプリケーションのデバッグに役立つ詳細な情報イベントを示します。

INFO

INFOレベルは、アプリケーションの進捗状況を大まかなレベルで強調表示する情報メッセージを示します。

WARN

WARNレベルは、危険な状況になる可能性のあることを示します。

ERROR

ERRORレベルは、アプリケーションの続行が可能なエラー・イベントを示します。

ALL

ALLレベルは下限ランクで、すべてのロギングが有効化されます。

OFF

OFFレベルは上限ランクで、ロギングは無効化されます。


8.2.2 ロガー

サードパーティのアプリケーションには、次のロガーが使用されます。

  • Nexawebの場合: com.nexaweb.server

  • OSCacheの場合: com.opensymphony.oscache

8.2.3 ロギングの構成と有効化

サードパーティのアプリケーションには、次のように任意のログ・レベルを使用できます。

log4j.logger.com.nexaweb.server=WARN
log4j.logger.com.opensymphony.oscache=ERROR