Sun Identity Manager 8.1 システム管理者ガイド

よくある問題のトラブルシューティングと解決策

Identity Manager を使用中に発生した問題を診断して解決できるようにするには、次のセクションに説明している情報をご利用ください。


注 –

Identity Manager の FAQ など、これ以外のトラブルシューティングについては次の URL にアクセスしてください。

https://sharespace.sun.com/gm/document-1.26.2296/IdM_FAQ.html?

注意: このサイトに記載している説明にアクセスするには、Share Space ID を登録している必要があります。


デバッグツールの使用

使用中の Identity Manager 配備で問題を特定して解決できるようにするには、数種類のデバッグツールが使用できます。次のツールがあります。

Identity Manager のデバッグページの使用

使用中の配備で問題を特定して解決できるようにするには、Identity Manager のデバッグページを使用します。たとえば、各種アクティビティーとオブジェクトのトレースの有効化と無効化、統計情報の収集、実行中のプロセスの検証、またはボトルネックとメモリー問題の調査が行えます。

一番よく使用されるデバッグページとその実際の .jsp ファイル名は、次の表のとおりです。


注 –

すべての Identity Manager デバッグページの総覧については、コマンドウィンドウを開いき、idm/debug ディレクトリのコンテンツを一覧表示します。


表 5–5 Identity Manager のデバッグページ

ページ名 

使用目的 

制御タイミング (callTimer.jsp)

各種メソッドの呼び出しタイマー統計を収集して表示します。この情報を基に、特定メソッドに対するボトルネックと呼び出された API を追跡できます。次のような呼び出しタイマーのメトリックスをインポートしたりエクスポートするには、読み出しタイミングページのオプションも使用できます。 

  • スキャン中の初期ユーザービューの取得に掛かる所要時間 (リソースなし)

  • スキャン中の初期ユーザービューの更新に掛かる所要時間 (リソース含む)

  • ユーザービューのポリシー評価に掛かる所要時間

  • 各ユーザースキャンに掛かる所要時間 (ユーザービューの取得やポリシー評価など)

  • アクセスをスキャンするためにユーザーリストの取得に掛かる所要時間

  • アクセスレビューでアクセスアテステーションルールの評価に掛かる所要時間


注 –

呼び出しタイミングの統計は、トレースが有効に設定されている間にだけ収集されます。


トレース設定の編集 (Show_Trace.jsp)

Identity Manager のインストールに用意されている Java クラスのトレース設定を有効にします。設定できる項目は次のとおりです。  

  • トレース対象となるメソッド、クラス、またはパッケージ、およびトレースレベル。

  • トレース情報の送信先をファイルにするか標準の出力先にするか、およびトレース出力ファイルの日時表示形式。

  • 格納対象となる最大トレースファイル数と、各ファイルの最大サイズ。

  • キャッシュ対象となるメソッドの最大数を指定します。

  • トレースファイルへのデータの書き込み方法。データ生成時にデータをトレースファイルへ書き込むか、キューに入れてからデータをファイルへ書き込むか。

ホスト接続プール (Show_ConnectionPools.jsp )

(データソースを使用していない場合に) 接続プール統計を表示します。プールのバージョン、接続の作成回数、アクティブ数、プール内にある接続数、プールから処理された要求数、切断された接続数などがあります。 

このホスト接続プールページは、ゲートウェイへの接続管理に使用された接続プールの概要を表示する際にも使用できます。この情報を使用して、低位アドレスメモリー状態を調べられます。 

消去されたキャッシュの一覧表示 (Clear_XMLParser_Cache.jsp)

キャッシュから最近使用した XML パーサーを消去して、低位アドレスメモリー状態を調査します。 

メソッドタイミング (Show_Timings.jsp)

ホットスポットをメソッドレベルで検出して評価します。次のような Identity Manager メソッドから情報を収集するには、このページを使用します。 

  • メソッド名

  • メソッドが呼び出された回数

  • メソッドがエラー状態で終了した回数

  • メソッドによって消費された平均時間

  • 各メソッドの呼び出しによって消費された最小時間と最大時間

オブジェクトサイズの概要 (Show_Sizes.jsp)

システムに影響しそうな、疑わしい大きなオブジェクトを検出します。このページは、リポジトリに格納されたオブジェクトのサイズを (文字単位で) 表示します。オブジェクトの総結合サイズ、平均サイズ、最小サイズなどがあります。リポジトリ内の最大設定オブジェクトの ID、名称、およびサイズを表示するには、「Type」列のエントリをクリックします。 

管理者設定ツールのプロビジョニングスレッド ( Show_Provisioning.jsp)

使用中のプロビジョニングスレッドの概要をシステム別に表示します (この情報のサブセットは、 Show_Threads.jsp から使用できます)。

システムキャッシュの概要 (Show_CacheSummary.jsp)

低位アドレスメモリーの状態を調査できるよう、次の情報を表示します。 

  • 管理者に関連付けられているオブジェクトキャッシュ

  • システムオブジェクトのキャッシュ

  • ユーザーのログインセッション

  • XML パーサーのキャッシュ

システムメモリーの概要 (Show_Memory.jsp )

JVM に十分なメモリーが割り当てられているか判断できるよう、調整などメモリーをたくさん使用する機能の使用時に使用できる合計メモリーと空きメモリーがどれくらいあるかを表示します。また、ガベージコレクションの起動や、ヒープ使用量を調査するための JVM 内の未使用メモリーの消去にも、このページが役に立ちます。 

システムプロパティー (SysInfo.jsp)

使用環境について表示します。 

システムスレッド (Show_Threads.jsp)

自動プロセスが実行中であることを確認できるよう、実行中のプロセスを表示します。プロセスの種類、プロセス名、優先順位、そのプロセスがデーモンかどうか、およびそのプロセスがアライブ中 (実行中) かについて記載します。 

ユーザーセッションプールの消去 (Clear_User_Cache.jsp )

低位アドレスメモリーの状態を調査するには、セッションプールの消去ページを使用します。 

Waveset プロパティー (Show_WSProp.jsp)

Waveset.properties ファイル内のプロパティーを表示して一時的に編集します。編集したプロパティー設定は、次回のサーバー起動時に初めて反映されます。

フラッシュされて消去された XML リソースアダプタキャッシュ (Clear_XMLResourceAdapter_Cache.jsp )

キャッシュから XML リソースアダプタを消去して、低位アドレスメモリー状態の調査に使用します。 


注 –

以上のデバッグページの詳細は、「Identity Manager のデバッグページの使用」を参照してください。


Procedure個々の Identity Manager デバッグページにアクセスする

始める前に

Identity Manager のデバッグページにアクセスして操作を実行するには、デバッグ機能が必要です。デバッグ機能がない場合は、エラーメッセージが表示されます。管理者とコンフィギュレータには、デフォルトでこのデバッグ機能が割り当てられています。

  1. ブラウザを開き、管理者インタフェースにログインします。

  2. 次の URL を入力して、「System Settings 」ページを開きます。

    http://host:port/idm/debug

    各表記の意味は次のとおりです。

    • host は、Identity Manager の実行先ローカルサーバーです。

    • port は、このサーバーが監視中の TCP ポート数です。

      このページから、Identity Manager の各種アクティビティーやオブジェクトのトレースを有効にしたり無効にできるほか、これらのページに表示される情報を基に、使用中の配備の問題をトラブルシューティングできます。

      デバッグページの中には、「System Settings」ページにリンクされていないものもありますので、そのページの .jsp ファイル名を入力してページを開く必要があります。例を示します。

      http:// host:port/idm/debug/ pageName.jsp

      ここで、pageName.jsp は、開こうとしている個々のデバッグページです。

Identity Manager IDE の使用

SunTM Sun Identity Manager 統合開発環境 (Identity Manager IDE) は、使用中の配備の Sun Identity Manager (Identity Manager) オブジェクトを表示、カスタマイズ、デバッグできる Java アプリケーションです。

具体的に言うと、Identity Manager IDE にはグラフィカルなデバッガが用意されており、Identity Manager のフォーム、ルール、およびワークフローをデバッグに使用することができます。このデバッガを使用すると、ブレークポイントとウォッチの設定、コードのステップ実行、変数の検査と修正、クラスと呼び出しスタックの検査、スレッドの抽出、およびマルチセッションの実行が行えます。

Sun Identity Manager 統合開発環境 (Identity Manager IDE) のインストール手順と設定手順は、次の URL から入手できるようになりました。https://identitymanageride.dev.java.net

Identity Manager のシステム監視の使用

Identity Manager のシステム監視を設定すると、システムイベントを追跡できます。システム監視は、各種レベルで統計を収集して集約し、仕様に従ってシステムイベントをリアルタイムに表示します。

この情報を計器盤グラフで表示すると、監査ログを見る前に、システムリソースの即時評価、異常の表示、履歴パフォーマンスの傾向の把握、および対話式で問題を切り離すことができます。計器盤は監査ログほど詳細に表示しませんが、この計器盤を見ると、ログのどこを見れば問題が探せるかがわかります。

計器盤とシステム監視の詳細は、『Sun Identity Manager 8.1 ビジネス管理者ガイド』の第 8 章「レポート」を参照してください。

アダプタログの仕様

アダプタログは、現在処理中のアダプタ情報を取り込みます。この情報を基に、アダプタの進捗を監視し、アダプタの問題を診断してデバッグすることができます。


注 –

トレースを有効に設定し、ログが実行される前にトレースが必要なメソッドを特定しておく必要があります。また、カスタマイズしたアダプタには、この新しいメソッドのログエントリを作成する呼び出しを含めておく必要があります。


ほぼすべてのアダプタに、独自のログファイル、パス、およびログレベルがあります。適切な Identity Manager または サービスプロバイダ ユーザータイプの同期ポリシーにある「ログ」セクションのほかの値をとともに、このアダプタログで取り込む詳細レベルを指定できます。

デバッグツールとしてアダプタログファイルを使用する詳細は、「アダプタのトラブルシューティング」を参照してください。

DTrace を使用したデバッグ

DTrace とは、Solaris オペレーティング環境に使用する、総合的な動的トレースのフレームワークです。DTrace には 30,000 を超えるプローブを使用中の本稼動システムに提供し、ユーザーレベルのトレースとカーネルレベルのトレースを統合します。JVM アクティビティーを監視するには、DTrace を使用します。この機能を使用すると、D 言語 (C 言語や awk のようなもの) も使用して任意のデータと式をトレースできるようになります。

JConsole を使用したデバッグ

Java Monitoring and Management Console (JConsole) とは、Java Management Extension (JMX) 技術に対応したグラフィカル管理ツールで、JDK 5 (以降) に付属しています。JConsole は実行中の JVM に接続し、接続している JMX エージェントの JVM MBeans から情報を収集します。

たとえば、JConsole を使用してできる操作には次のようなものがあります。


注 –

JConsole の詳細は、「JConsole を使用したアプリケーションの監視」というタイトルの記事を参照してください。この記事は、次の URL から表示できます。

http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html


ブラウザに表示されたエラーのデバッグ

アクションを実行した後に Identity Manager インタフェースに赤いエラーメッセージが表示された場合は、ページのソースを表示して保存し、情報全体を表示してエラーを解析してください。

ページのソースの表示する

    それでもまだ問題の解決にサポートが必要な場合は、

  1. ページソースを表示してから、「ファイル」>「保存」の順に選択してシステムにこのファイルを保存します。

  2. 保存したファイルから、エラーを見つけます。

  3. エラー情報、問題が発生したページの URL、問題の説明を電子メールで Sun サポートまで送信し、解決サポートを依頼してください。

アダプタのトラブルシューティング

アダプタをトラブルシューティングするには、アダプタのログファイルをレビューします。ほとんどのアダプタはそのリソース設定をログファイルに書き込んでいるため、この情報を基に、そのアダプタが起動していること、すべての設定の変更内容が保存されていることを確認できます。


注 –

トレースを有効に設定し、ログが実行される前にトレースが必要なメソッドを特定しておく必要があります。また、カスタムアダプタには、この新しいメソッドのログエントリを作成する呼び出しを含めておく必要があります。

トレースを有効にする手順については、必要に応じて「Identity Manager サーバーのトレース」を参照してください。


ほとんどのアダプタログファイルは、$WSHOME/config ディレクトリにあり、WSTrace1.log という名前が付けられています。

ActiveSyncUtil インスタンスへのログ呼び出しを作成し Active Sync が有効に設定されているアダプタは、Log File Path リソース属性で指定されたディレクトリにログファイルまたはログファイルセットを作成します。このほかにも Active Sync 関連のログエントリがないか、このログファイルを必ずチェックしてください。

この節の情報は、次のように構成されています。

アダプタをデバッグする

    カスタムアダプタをデバッグするには、この一般的な手順に従ってください。

  1. アダプタにテストプログラムを作成し、この Java ファイルが次の基本機能を実行することを確認します。

    1. リソースの新規作成

    2. ユーザーの作成

    3. ユーザーの取得

    4. ユーザーの更新

    5. ユーザーの削除

    6. 複数ユーザーに、作成、取得、更新、および削除の操作を実行します。


      注 –

      サンプルテストファイル (SkeletonResourceTests.java) が、インストール CD の/REF ディレクトリに用意されています。


  2. デバッグに適切なログレベルを設定します。

    たとえば、最初のデバッグパスには、ログレベル (最大デバッグ出力) を 4 まで上げ、ログファイルのパスを設定し、最大ファイルサイズを指定します。

    アダプタを起動すると、すべてのリソース設定がこのログファイルに書き込まれます。この情報を基に、アダプタが起動したこと、全ての設定の変更内容が保存されたことを確認できます。

  3. アダプタをコンパイルしてテストします。

    • テストプログラムをコンパイルするには、コマンドウィンドウを開いて javac -dtest/filename.java コマンドを入力します。このコマンドは、適切な com/waveset/adapter/test ディレクトリにクラスファイルを作成します。

    • このクラスファイルを使用して新アダプタをテストするには、コンパイルしたアダプタが com/waveset/adapter ディレクトリにあることを確認して、次のコマンドでこのアダプタを実行してください。


      java– D waveset.home=path com.waveset.adapter.test.
      MyResourceAdapter
      
  4. リソースの HTML ヘルプファイルを作成します。


    注 –
    • サンプルのヘルプファイルが、com/waveset/msgcat/help/resources ディレクトリの idm.jar ファイルに用意されています。

    • アプリケーションのオンラインヘルプを記載する方法については、『Sun Identity Manager Deployment Reference』を参照してください。


  5. (Active Sync が有効なアダプタの場合のみ) 最後のリソースで同期をリセットするには、XmlData SYNC_resourceName オブジェクトを削除します。

  6. エラーログを読み、アダプタを修正します。

  7. ログレベルをリセットします。

    たとえばレベル 2 のデバッグを指定すると、アダプタ設定とエラーに関する情報が表示されますが、ログの詳細量が管理できるレベルまでに制限されます。

  8. Identity Manager を起動する前に、resource.adapters エントリの下にあるアダプタ名を設定して $WSHOME/config/Waveset.properties ファイルにある新アダプタを特定しておく必要があります。そうしないと、Identity Manager がそのアダプタを認識できません。

  9. アダプタとその関連ヘルプファイルを Identity Manager にインストールします。


    注 –

    Identity Manager がディスプレイ内の新アダプタのインスタンスを認識できるようにする前に、そのタイプの新リソースを「リソースのリスト」ページから作成しておく必要があります。

    このページから「新規」>「新アダプタ」の順に選択し、「リソースウィザード」から新アダプタを作成します。


  10. Identity Manager で、そのリソースにリソースとユーザーを作成します。


    ヒント –

    Active Sync 有効アダプタをトラブルシューティングする際、XmlData SYNC_resourceName オブジェクトを編集して Active Sync 同期プロセスの MapEntry を「デバッグ」ページから削除していれば、アダプタが最初に検出された変更点からやり直します。

    IAPI イベントを使用した場合に、最後に処理した変更値などのリソースの同期状態を格納するには、Property() メソッドを設定する必要があります。このメソッドを設定すると、アダプタのトラブルシューティングに非常に役立ちます。過去の変更内容を実行して無視するようにアダプタを設定することができます。それ以降は、アダプタを修正して、変更結果をアダプタのログファイルに表示できるようになります。


    使用中のリソースが Active Sync リソースの場合は、そのリソースの編集ページでログを有効にしていれば、さらに情報が表示されることもあります。ログレベル (0-4) を設定し、ログファイルの書き込み先となるファイルパスを設定します ( resource_name.log など)。

  11. (Active Sync 有効アダプタの場合のみ) 最後のリソースの同期を再起動します。

LoginConfig 変更内容をデバッグする

LoginConfig 関連の変更点をデバッグするには、次を行う必要があります。

  1. 選択したファイルのトレースを有効にし、メソッド/クラスレベル 1 トレースで次のクラスをトレースします。

    • com.waveset.security.authn.WSResourceLoginModule

    • com.waveset.session.LocalSession

    • com.waveset.session.SessionFactory

    • com.waveset.ui.LoginHelper

    • com.waveset.ui.web.common.ContinueLoginForm

    • com.waveset.ui.web.common.LoginForm

  2. Telnet で、次のようにシングルサインオン (SSO) のパススルー認証ログインをテストします。

    1. SSO ログインモジュールを正しく設定したら、HTTP ポートに直接 telnet し、HTTP 要求を login.jsp に送信します。

    2. 次の要求を telnet セッションに貼り付けます。これには、sm_user HTTP ヘッダーを検索する SSO ログインモジュールが記載されています。


      HEAD /idm/login.jsp HTTP/1.0
      Accept: text/plain,text/html,*/*
      Accept-Language: en-us
      Accept-Encoding: gzip, deflate
      User-Agent: Mozilla/4.0
      Host: LOCALHOST
      sm_user: Configurator

      トレースに、ユーザーが正常にログインしたと表示されます。例を示します。


      2003.07.08 14:14:16.837 Thread-7 
      WSResourceLoginModule#checkForAuthenticatedResourceInfo()
      Found authenticated resource accountId, ’Configurator@Netegrity 
      SiteMinder’on Identity Manager user ’Configurator’. 
      null null 2003.07.08 14:14:16.837 
      Thread-7 WSResourceLoginModule#checkForAuthenticatedResourceInfo()
      Exit null null 2003.07.08 14:14:16.837 Thread-7 WSResourceLoginModule#login()
      Exit, return code = true null null 2003.07.08 14:14:16.847
      Thread-7 LocalSession#login() Login succeeded via Netegrity SiteMinder 
      null null 2003.07.08 14:14:16.847 Thread-7 LocalSession#login() 
      Overall authentication succeeded null null 2003.07.08 14:14:16.897 Thread-7 
      LocalSession#checkIfUserDisabled() 
      Entry null null 2003.07.08 14:14:16.897 Thread-7 
      LocalSession#checkIfUserDisabled() Exit 
      null null 2003.07.08 14:14:16.927 Thread-7 LocalSession#login() 
      Exit null null

アダプタ接続問題をデバッグする

ここでは、よくあるアダプタ接続問題のデバッグ方法について説明します。

このセクションのトピックは、次のように構成されています。


注 –

通常、アダプタクラスの com.waveset.adapter.adapter_classname をトレースすれば、アダプタの接続問題を特定できます。例を示します。

com.waveset.adapter.ADSIResourceAdapter

トレースを有効にする手順については、「Identity Manager サーバーのトレース」を必要に応じて参照してください。


アダプタの認証問題

よくある認証問題には、次のようなものがあります。

Active Sync アダプタの問題

カスタム Active Sync アダプタで最もよくある問題は、フォーム関連のものです。この種のエラーは通常、必須フィールドにパスワードや電子メール情報など必要な情報を入力しなかったために起こります。

Identity Manager は、ビューの最終 XML の後に、フォーム検証エラーをアダプタログに出力します。例を示します。


20030414 17:23:57.469: result from submit (blank means no errors):
 20030414 17:23:57.509: Validation error: missing required field password

Identity Manager は、アダプタログにすべてのメッセージも出力します。このメッセージには、アカウント作成時と更新時、アダプタエラー、スキーママップデータなどが記載されます。

Active Sync リソースアダプタは、最後に処理した変更内容についての情報を SYNC.resourceName XMLData オブジェクトに格納します。

Domino ゲートウェイアダプタの問題

次に、よくある Domino ゲートウェイとアダプタの設定エラーと、この問題の解決手順を説明します。

メインフレームホストアダプタの問題

RACF、ACF2、または TopSecret のホストアダプタが接続を再利用できなかったりキャッシュできないと、ユーザーが頻繁にログインしなくてはならなくなります。これにより、パフォーマンスに悪影響を与えます。この問題は、キャッシュのタイムアウト設定に原因があることがよくあります。

    キャッシュのタイムアウト設定を確認するには、Identity Manager のアダプタ接続プールを次のようにトレースします。

  1. Identity Manager の「Edit Configuration Object」ページから、com.waveset.adapter.HostConnPool#reapConnections メソッドをレベル 4 でトレースします。

    トレースを有効にする手順については、「Identity Manager サーバーのトレース」を必要に応じて参照してください。

  2. アダプタが操作を実行中に、十分な長さの期間のトレースを取り込みます (最低 30-60 分)。

  3. アプリケーションサーバーの stdout のトレース出力またはトレースファイルをレビューして、Info reaping connection エントリを見つけます。

    もしもこのエントリが 30 分おきに 1 回以上発生している場合は、接続が不必要にタイムアウトになっているということです。

    この問題を解決するには、Idle Timeout リソース属性値を上げて、接続が頻繁にリープされすぎないようにします。Idle Timeout 属性値は、接続がログアウトされるまでのアイドル期間を制御します。デフォルト値は 90 秒ですが、これですと新たなログインが頻繁に発生します。

    理想的には、配備環境に合わせて、平均的なアイドル時間より長い値を指定してください。たとえば、Idle Timeout 属性値を 30 分 (1800000 ミリ秒) 以上に調節します。

PeopleSoft アダプタの問題

ここでは、次のような PeopleSoft のアダプタ問題をトラブルシューティングする方法について説明します。

SAP アダプタの問題

SAP or SAP HR Active Sync アダプタから SAP システムへの接続をテストしようとしてエラーが発生した場合は、コマンドウィンドウを開き、インストール先ディレクトリ WEB-INF/lib からこのコマンドを実行します。

java -jar sapjco.jar

sapjco.jar コマンドは、インストールされている SAP Java Connector (JCO) のバージョンと、このアダプタが正しくインストールされているかを表示します。このコマンドは、JavaTM Native Interface (JNITM) の参照先プラットフォーム、および SAP システムと通信している RFC ライブラリも返します。

この参照先プラットフォームのライブラリが見つからない場合は、SAP マニュアルを参照して、SAP Java Connector の正しいインストール方法を調べてください。

UNIX アダプタの問題

ここでは、UNIX アダプタによくある問題をデバッグする方法について説明します。

Auditor のトラブルシューティング

Identity Auditor を使用すると、次のメソッドをトレースして問題をトラブルシューティングできます。

また、Form または TaskDefinitions を修正すれば、次の非表示フラグを設定できます。

また、「Show Timings」ページ (/debug/callTimer.jsp ) に次の情報が表示されます。

ClassNotFound 例外のトラブルシューティング

ClassNotFound の例外エラーのイベント発生時には、サーバーのクラスパスに欠けているクラスがないか確認します。このクラスパスが適切に設定されている場合は、親クラスのローダーの前にアプリケーションクラスローダーがロードしたとおりにアプリケーションサーバーを設定してみてください。場合によっては、アプリケーションのクラスパスをサーバーのクラスパスの前にロードすると、この問題が解決できることがあります。この手順については、アプリケーションサーバーのマニュアルを参照してください。

フォーム問題のトラブルシューティング

ここでは、よくあるフォーム問題と、この問題の解決方法について説明します。

ゲートウェイのトラブルシューティング

Sun Identity Manager Gateway, をトラブルシューティングする際に、ゲートウェイをコマンドラインから実行すると役立つことがよくあります。コマンドラインのオプションを使用すれば、サービスではなく通常のアプリケーションとしてゲートウェイを起動したり、別のポートでゲートウェイを実行したりと、より広範囲の起動オプションが入力できるようになります。


注 –

コマンドラインから実行する前に、サービスとしての Identity Manager ゲートウェイを kill しておく必要があります。たとえば、次のように入力します。

gateway.exe -k

ゲートウェイのコマンドライン引数は、次の表のとおりです。

引数 

説明 

-i 

指定した起動で、このプログラムを NT サービスとしてインストールします。 

-r 

Service Manager からこのプログラムを削除します。 

-s 

サービスを開始します。 

-k 

サービスを強制終了します。 

-t 

既存サービスに起動を設定します。 

-d 

通常のアプリケーションとしてデバッグして実行します。 

-p 

TCP/IP ポート番号 (デフォルトは 9278) を指定します。 

-f 

トレースファイルへのパスを指定します。 

-l 

トレースレベルを指定します (デフォルトは 0 で、情報なし)。 

-m 

トレースファイルの最大サイズを KB 単位で指定します。 

-v 

バージョンを表示します。 

用途: gateway -i n -r -s -k -t n -d -p n -f name -l n -m n -v


注 –

ゲートウェイのトラブルシューティングは、Identity Manager ゲートウェイのデバッグページからも行えます。 (debug/Gateway.jsp )。 詳細は、「「ゲートウェイデバッグ」ページからトレースを設定する方法」を参照してください。


Java コード問題のトラブルシューティング

Identity Manager を使用するのに必要な基本的な Java プログラミングのスキルがあれば、ほとんどの Java コード問題を診断して解決できるはずです。

ただし、データベースへの接続を開いてその接続を適切に閉じなかった方がいると、問題が発生することがかなりよくあります。接続を適切に閉じなかった場合、パフォーマンス問題につながります。

低位アドレスメモリー状態のトラブルシューティング

ここでは、低位アドレスメモリー状態の調査に使用できる次のツールについて説明します。

Identity Manager のデバッグページから


注 –

Identity Manager のデバッグページにアクセスして操作を実行するには、デバッグ機能が必要です。管理者とコンフィギュレータには、デフォルトでこの機能が割り当てられています。

デバッグ機能がない場合は、エラーメッセージが表示されます。


次の Identity Manager デバッグページを管理者インタフェースから開いて、システムで使用中のメモリー量を監視することができます。

JConsole から

低位アドレスメモリーとデッドロックを検出するには、Java Monitoring and Management Console (JConsole) を使用します。JConsole とは、Java Management Extension (JMXTM) 技術に対応したグラフィカル管理ツールで、JDK 5 (以降) に同梱されています。

JConsole は、メモリーシステム、メモリープール、MBeans ガベージコレクタにアクセスして、メモリー消費量などのメモリー使用量、メモリープール、およびガベージコレクション統計についての情報を表示します。JConsole を使用すると、現在のヒープメモリー使用とヒープメモリー使用以外を調べるために MBeans を監視することもできます。


注 –

Java プラットフォームで実行するアプリケーションを JConsole を使用して監視する方法については、「JConsole を使用したアプリケーションの監視」を参照してください。 このドキュメントは、次の URL から入手できます。

http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html


PasswordSync 問題のトラブルシューティング

PasswordSync の問題をトラブルシューティングしようとする際は、次のログを参考までにお読みください。

よくある PasswordSync 問題とソリューションは、次のとおりです。

調整問題のトラブルシューティング

調整タスクの問題をトラブルシューティングしようとする際は、調整ステータスのデバッグページ ( debug/Show_Reconciler.jsp) を見て、どのリソーススレッドが稼動中か調べてください。

よくある調整問題には、次のようなものがあります。

リポジトリ接続問題のトラブルシューティング

接続問題をトラブルシューティングするには、Identity Manager の lh コマンドが非常に有用です。 このコマンドは Identity Manager の Web アプリケーションインストールを使用しますが、等式からそのアプリケーションサーバーを削除します。

ここでは、次の項目について説明します。

lh コマンドを使用した問題のデバッグ方法

ここでは、lh コマンドの使用方法について説明します。基本的なコマンドから始めて、Identity Manager の大部分を実行できるようなコマンドの使用方法まで進んでいきます。

これらのデバッグツールに慣れると、これらの lh コマンドを使用するのに独自のバリエーションが展開できるようになります。

lh setRepo -c -n の使用

一番基本的な接続テストを実行するには、lh setRepo -c -n コマンドを使用します。これで、現在のリポジトリの場所を接続しなくても調べられるようになります。Uこのコマンドを使用すると、RL や JDBC ドライバなどのパラメータが正しいかどうか検証できます。

lh setRepo -c -v の使用

現リポジトリの場所に 接続して調べるには、lh setRepo -c -v コマンドを使用します。(-v は、冗長出力を表示します。) このコマンドを使用すると、Identity Manager サーバーを必要とせずに、ほぼすべてのリポジトリコードが実行できます。


注 –

詳細は、「DataSource 接続のテスト」を参照してください。


setRepoの使用

新しいリポジトリの場所を指定したり、リポジトリを同じ場所に設定するには、setRepo コマンドをデバッグプロセス全体にわたって使用します。

このコマンドを使用すると、JAR ファイルなど必要なコンポーネントがすべて所定の位置にあるか確認できます。setRepo コマンドはまた、テーブルの所有者や権限問題をデバッグするのに useridpassword などの接続情報を変えられます。

lh console の使用

WEB-INF/lib 内の JAR ファイルと、WSHOME の下にある WEB-INF/classes 内のクラスを使用している Identity Manager サーバーを実際に起動するには、このコマンドを使用します。lh console コマンドは、Identity Manager インストール環境を使用して、実際に Identity Manager アプリケーションを起動しますが、等式からアプリケーションサーバーを削除します。

DataSource 接続のテスト

DataSource 接続をテストしていると、lh setRepo -c コマンドが失敗することがあります。

この障害は、アプリケーションサーバーのデータベース接続サービスやアプリケーションサーバーのディレクトリサービスを使用できるように Identity Manager を設定していると特に起こりやすくなります。このサービスは、実行中のアプリケーションサーバーが Web アプリケーションに提供している環境でのみ機能します。

まず、目的の DataSource 設定から手順を追いながら取り掛かります。この手順に慣れたら、自分の目的に合うようにこの方法を改変することができます。

  1. アプリケーションサーバーのデータベース接続サービスを省略する DataSource 以外の接続など、直接 JDBC DriverManager 接続を使用してみてください。

  2. DataSource を使用しますが、アプリケーションサーバーのディレクトリサービス以外の ディレクトリサービスにある DataSource オブジェクトを格納します。


    注 –

    ほかに使用可能なディレクトリサービスがない場合は、ローカルファイルシステムのみを使用する JNDI の参照実装など、フリーのディレクトリサービスをダウンロードすることができます。


    これがうまくいったら、アプリケーションサーバーへの問題を突き止められます。

    次に、有用であれば、アプリケーションサーバーのデータベース接続サービスまたはアプリケーションサーバのディレクトリサービスを追加することもできます。アプリケーションサーバーが Web アプリケーションに提供する環境外で機能しているサービスであればどちらでもかまいません。

サーバー関連問題のトラブルシューティング

アプリケーションサーバーのログを解析して、致命的なエラーとその他サーバー関連の問題がないか調べることができます。

サーバー問題をトラブルシューティングするには、アプリケーションサーバーの管理者コンソールを使用して、各モジュールのログレベルを高めます。詳細は、サーバーに付属している製品マニュアルを参照してください。

ほとんどのアプリケーションサーバーには、アプリケーションサーバーを実行する JVM の 標準出力ファイル (stdout) と標準エラーファイル (stderr) に標準の場所があります。アプリケーションサーバーログを解析するには、Identity Manager アプリケーションサーバーに指定したこのログディレクトリまたはログファイルを見つけます。


注 –

このトレース出力には、Identity Manager の起動とシャットダウンメッセージが表示されます。


Identity Manager Version 7.1, 以降、Oracle 10g on Sun Application Server Enterprise Edition 8.2 を搭載した Identity Manager を使用したときに、シーリング違反の例外がアプリケーションサーバーログに発生するようになりました。

この例外は、Oracle JDBC ドライバを備えた複数の Java Archive file (JAR ファイル) を使用した場合によく起こります。

この問題を防ぐには、CLASSPATH に JDBC ドライバ JAR ファイルが 1 つしかないこと、 Oracle 10g に用意されている ojdbc14_g.jar を使用していることを確認します。さらに、確実に正しく処理できるよう、Oracle 10g インストールに用意されている ojdbc14_g.jar だけを使用してください。

Service Provider 問題のトラブルシューティング

WebSphere の Identity Manager Service Provider 「エンドユーザーログイン」ページを使用し、javax.servlet.UnavailableException が 404 エラーとともにブラウザに表示された場合は、IBM 1.5 JDK のプロパティーをいくつかリセットする必要があります。

    次の手順を使用します。

  1. was-install/java/jre/lib ディレクトリで、jaxb.properties.samplejax.properties に変え、この 2 行のコメントを解除します。


    javax.xml.parsers.SAXParserFactory=
             org.apache.xerces.jaxp.SAXParserFactoryImpl 
    javax.xml.parsers.DocumentBuilderFactory=
             org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
  2. ファイルを保存してアプリケーションサーバーを再起動します。

SPML 設定のトラブルシューティング

    SPML 設定をテストする

  1. 「接続」ページを開き、「テスト」をクリックします。

    正常に接続しましたというダイアログがポップアップします。

  2. 「スキーマ」ページを開き、「送信」をクリックします。

    Identity Manager サーバーでサポートされているスキーマの階層ビューが表示されます。

    正常な接続を確立できない場合は、次の操作を行います。

    • 入力した URL をダブルクリックします。

    • 受信したエラーに no responseconnection refused といったフレーズが含まれている場合は、接続 URL で使用されているホストかポートに問題があると考えられます。

    • 接続は確率したが、Web アプリケーションかサーブレットが見つからなかったというエラーの場合は、WEB-INF/web.xml ファイルに問題があると考えられます。

アップグレードのトラブルシューティング

アップグレード中に問題が発生した場合は、$WSHOME/patches/ logs でぃれくとりにあるアップグレードログファイルを確認します。このログのファイル名は、タイムスタンプとアップグレードのステージに基づいています。

アップグレード後、Identity Manager が次の例外で起動できない場合は、使用中の JDK/JRE に問題がある可能性があります。


java.lang.IllegalStateException: Error attempting to decrypt: 
Given final block not properly padded

以前使用していたベンダーと同じベンダー製の JDK/JRE を使用していることを確認します。たとえば、以前 IBM 製の JDK を使用していた場合は、Sun JDK にアップグレードできません。この問題を解決するには、JDK/JRE をアンインストールして、以前のベンダー製の JDK または JRE をインストールします。