Oracle® Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド 11gリリース1(11.1.1.7) B61382-07 |
|
前 |
次 |
この付録では、調整が必要なOracle Business Activity Monitoring (Oracle BAM)の構成設定が原因で発生する可能性がある一般的な問題について説明します。
この付録の内容は次のとおりです。
この項では、アップグレードの問題のトラブルシューティングに関する情報が含まれます。内容は次のとおりです。
SOAコンポジット・プロジェクトをOracle JDeveloper 10gから11gに移行しようとした時:
JCAバインディングの呼出し時に例外が発生しました:
JCA Binding execute of Reference operation 'writetoBAM' failed due to: javax.resource.ResourceException: oracle.bam.common.security.authentication.AuthenticationException: BAM-00400: Authentication failed.
JCAバインディングの呼出し時に例外が発生しました:
JCA Binding execute of Reference operation 'writetoBAM' failed due to: javax.resource.ResourceException: javax.xml.soap.SOAPException: S:Server:BAM-06146: Cannot upsert rows in Data Object "/Samples/Employees".oracle.bam.adc.api.exceptions.BatchingException: BAM-01500: No value specified for key column "_Sales_Number".
次の点を考慮してください。
11gでOracle BAMアダプタの接続仕様および通信仕様に変更があったので、Oracle JDeveloperの移行処理ではこの対応を行う必要があります。対応を行わない場合は、各センサー・アクションおよびJCAアダプタを再構成して、新しい接続仕様および通信仕様の内容で更新してください。
RMI認証が失敗する場合は、アウトバウンド接続プールの構成プロパティを確認して、有効な情報が指定されていることを確認します。
SOAPで失敗が発生する場合、例外は、Oracle BAMデータ・オブジェクトに行を挿入するときのキーが見つからないことが関係しています。コンポジットのXSLTルールでデータが正常に伝播されることを確認します。また、前のシナリオのSOAP設定を確認します。
Oracle Business Activity Monitoringソフトウェアがインストール後に実行されない場合や開始ページに関する問題がある場合は、次の点を確認してください:
データベースが実行中でアクセス可能であることを確認します。system
ユーザーでデータベースに接続可能である必要があります。
C:\>sqlplus system/welcome@orcl
エラーORA-12154は、Oracle TNS Listenerサービスが実行中でないことを示している場合があります。
データベースがリモート・マシンに存在する場合、データベースがインストールされているマシンでコマンドを実行するか、ローカル・ホストにsqlplus
が必要です。
Oracle BAM Webアプリケーションを起動しようとすると、次の404エラーが発生します:
Error 404--Not Found From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1: 10.4.5 404 Not Found
ポート番号が正しいこと、URLが次の形式に一致すること(大文字と小文字は区別されます)を確認します:
http://host_name:port_number/OracleBAM
Oracle Internet DirectoryとあわせてOracle BAMを構成をしている場合、Oracle WebLogic Serverコンソールで、DefaultAuthenticator
プロバイダがOPTIONALに設定されていることを確認します。そうでない場合、認証は失敗します。
これは、ユーザー・アカウントが認識されていないときに発生することがあります。ユーザーが、Oracle BAMで認識できないグループに含まれている可能性があります。認識可能なグループは、BamAdministrators、BamReportArchitects、BamReportCreatorsおよびBamReportViewersです。
Oracle BAMユーザーの管理の詳細は、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドのOracle Business Activity Monitoringの管理を参照してください。
この項では、Oracle BAMアクティブ・ビューアやアクティブ・スタジオ、アーキテクト、アドミニストレータ・アプリケーション、Oracle BAMイベント・エンジンおよびレポート・キャッシュで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
アクティブ・データがOracle BAMレポートに出力されません。
webcache.xml
ファイルの圧縮設定を手動で変更して、SITE要素の下の圧縮をNOに設定します。
<COMPRESSION ENABLED="NO"/>
この変更後、Oracle WebCacheを再起動します。
圧縮がオンの場合、Oracle WebCacheは、特定のしきい値サイズまでOracle BAMアクティブ・データをバッファリングしてから、データを圧縮してOracle BAMアクティブ・ビューアに返すため、圧縮をオフにする必要があります。SITEで圧縮が無効化されると、Oracle WebCacheはバッファリングしないため、アクティブ・データが即座にOracle BAMアクティブ・ビューアに表示されます。
関連項目: D.3.9項「レポートで継続的に「再接続中」が表示される」
前述の方法で問題が解決しない場合:
Oracle Support Servicesに連絡して、Javaスクリプト・パッチと、Internet Explorerでクライアント側のログを生成するように構成する方法の手順を入手します。
Oracle Support Servicesに連絡して、Oracle BAMのサーバー側のログ出力を構成します。
(10,000行を超える)データを(アラート・アクション「データ・オブジェクトから行を削除」によって)削除しようとしているデータ・オブジェクトがあり、このアクションの実行中に、そのデータ・オブジェクトに依存するレポートが開かれていると、アクティブ・データはビューセットで停止され、削除が完了してから再ロードされます。
さらに、「データ・オブジェクトから行を削除」の実行時に、データ・オブジェクトに依存するアラートが内部で一時的に無効化されます。このアクションの実行中は、そのデータ・オブジェクトを使用して作成された新しいアラート、または無効化後に再有効化された既存の依存アラートがあると、システムが動作しなくなります。このアクションが進行中の間は、データ・オブジェクトに依存するアラートを作成、無効化または再有効化しないことをお薦めします。
依存データ・オブジェクトに対するアラート・アクション「データ・オブジェクトから行を削除」の進行中に(10,000行を超えるデータを削除していて、そのときに)レポートを開こうとすると、レポートが動作しなくなったり、結果が不明になる可能性があります。このアクションが進行中の間は、データ・オブジェクトに依存するレポートを開かないことをお薦めします。
関連情報は、D.3.2項「アクティブ・データが時々中断される」を参照してください。
レポートの一部が印刷されません。端が欠けます。
Oracle BAMの「パーソナライズ」ダイアログとプリンタ・ドライバで、印刷レイアウトを「横」に設定する必要があります。
詳細は、Oracle Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイドを参照してください。
管理者以外のロールを割り当てられているユーザーがレポートを作成したり、表示できないことがあります。しかし、この処理を行う権限は持っており、次のエラーが表示されます。
DATAOBJECTPERMISSIONMISSINGEXCEPTION_ACTIVESTUDIO_REPORTEDITOR_EDITREPORT
例外メッセージBAM-01257: リクエストしたアクションを実行するのに十分な権限がありません。
これは、ユーザーがOracle BAMアーキテクトの/Systemフォルダに対して最低でも読取り権限を持っていないためです。
レポートに50を超えるプロンプト値を構成する場合は、BAMWebConfig.xml
ファイルのRecordsLimitForValueBrowser
構成プロパティを変更する必要があります。
変更を反映するには、Oracle BAMを再起動します。
詳細は、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドの拡張プロパティの構成を参照してください。
文字列フィールドに対してフィルタを構成している場合、値リストを参照して選択したりフィルタをオンにしたりできます。フィールドの値が50を超えた場合、リストにすべての値は表示されません。
リストに表示される値の数を増やすには、BAMWebConfig.xml
ファイルのRecordsLimitForValueBrowser
設定の値を変更します。デフォルトは50個の値です。
変更を反映するには、Oracle BAMを再起動します。
詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』の拡張プロパティの構成を参照してください。
「システム」→「ビュー」→「アクション・フォーム・テンプレート」データ・オブジェクトにアクション・フォーム・タイプが存在しない場合は、次のエラーが発生します。
SAXPARSEEXCEPTION_ACTIVESTUDIO_VIEWEDITOR_INPUTS
アクション・フォーム・テンプレートのデータ・オブジェクトにエントリを作成してから、アクション・フォーム・ビューを作成してみてください。
「再プロンプト」をクリックして、レポートをリフレッシュします。これは、フェイルオーバーなどでOracle BAMサーバーが停止したり再起動したときに発生することがあります。
前述の方法で問題が解決しない場合は、Oracle Support Servicesに連絡して、Javaスクリプト・パッチと、Internet Explorerでクライアント側のログを生成するように構成する方法の手順を入手します。
Oracle BAMアーキテクトでデータ・オブジェクトの作成時に使用されるデータ・オブジェクト名の特殊文字は置換されてから、Oracle Enterprise Manager Fusion Middleware ControlのOracle BAM ADCパフォーマンス・サマリーページにその名前文字列が表示されます。これは、Oracle BAMアーキテクトとEnterprise Manager Monitoringモジュールでそれぞれ異なるネーミング規則を使用しているからです。
Oracle BAMでは、リスト・ビューに表示されるデータは64,000行で切り捨てられます。リスト・ビューに表示される行数はBAMServerConfig.xml
のADCMaxViewsetRowCount
構成プロパティによって制御され、この値は変更することができます。
クラスsun.awt.X11GraphicsEnvironmentを初期化できませんでした
このメッセージが表示された場合は、Oracle BAMサーバーのホストで環境変数を設定しないで、Oracle BAMサーバーを再起動する必要があります。
Oracle BAMのすべてのUNIXインストールでは、Oracle BAMによって使用されるJava AWT APIの動作の都合から、初期状態のDISPLAY
環境変数でOracle BAMサーバーを起動する必要があります。
$ unsetenv DISPLAY
ユーザーを削除した場合は、Oracle BAMで古いインスタンスを解決するまで、そのユーザー名を再使用できません。Oracle WebLogic Serverでユーザーを削除すると、削除されたユーザーは、Oracle BAMによって非アクティブとしてマークされます。
新しいアカウントに同じユーザー名を再使用することを試みても、Oracle BAMでは、以前に削除されたユーザーと新しく追加されるユーザーは同じであると見なされません。Oracle BAMアドミニストレータを使用して(必要に応じてユーザーのOracle BAMオブジェクトを別の有効なユーザーに転送し)、Oracle BAMから元のユーザーを削除する必要があります。Oracle BAMから非アクティブなユーザーを削除すると、そのユーザー名を再使用できます。
Oracle BAMからユーザーを削除する方法については、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドのOracle BAMアドミニストレータからの無効なユーザーの削除を参照してください。
Oracle BAMでユーザー名の解決が必要な理由は2つあります:
1) 同じ名前を持つ新規ユーザーが、前のユーザーのOracle BAMオブジェクトに機械的に割り当てられるべきではありません。たとえば、John Smithという名前のユーザーが会社を退職し、新しい(別の)John Smithが会社に入社したとします。最初のJohn SmithのすべてのOracle BAMオブジェクト(レポート、データ・オブジェクト、セキュリティ設定)を新しいJohn Smithに引き渡すのは望ましくありません。彼らは同じ名前ですが、同じ人物ではなく、Oracle BAMで割り当てられるGUIDも同じではありません。
2) 前のユーザーが所有するオブジェクトを残しておいて、他のユーザーに再度割り当てたいことがあるかもしれません。ユーザーを削除するとそのユーザーのOracle BAMオブジェクトは破棄されてしまうため、Oracle BAMが自動的に前のJohn SmithをOracle BAMから削除することはありません。Oracle BAMは、実際にユーザーをOracle BAMから削除する前に、ユーザーを非アクティブにして、管理者がそのユーザーのOracle BAMオブジェクトを別のユーザーに渡すことができるようにします。
「すぐに有効」と「連続した時系列」(CTS)の時間差が非常に小さいために、この2つの間でデータを同期化できない場合があります。
例1:
発生するケースとしては、「すぐに有効」(時間間隔内のケースを使用)が間隔の半ばあたり(たとえば、16秒目)に開始され、CTSには10から19秒の時間間隔が表示されていたとします。次の10秒間について、チャートにはすでに20から30秒の時間間隔が表示されていますが、「すぐに有効」では16秒目から26秒目にのみデータ出力が行われ、次のchangelistのセットは36秒目にのみ出力されます。そのため、更新が発生したことはチャートの2番目のグループで確認できます。
別の選択肢としては、レポートの設計中にCTSの同期化オプションを選択します。この方法は、CTSと「すぐに有効」の両方で同じ時間単位が選択されている場合にのみ効果があります。
例2:
この例では、CTSは10秒間隔に設定されていますが、「すぐに有効」は直前の2分間です。そのため、同期化しても「すぐに有効」の間隔は60秒(1分)になり、CTSの10秒間隔と一致しません。
この場合、CTSの同期化オプションは効果がありません。
Microsoft SQL Serverには、あまり深くまで問合せをネストできないという制約がありますが、一部のOracle BAMの機能では特定のケースにおいて深いネストが必要になることがあり、このようなケースではMicrosoft SQL Serverで次のエラーがスローされます。
SQLEXCEPTION_NULL_NULL_NULL [FMWGEN][SQLServer JDBC Driver][SQLServer]Some part of your SQL statement is nested too deeply. Rewrite the query or break it up into smaller queries.
これは、あるレポートから別のレポートへのドリル・アクロスを使用している場合に発生します。あるレポートから別のレポートに一意のIDが多数渡され、ネストが非常に多い問合せが生成されると、Microsoft SQL Serverは問合せを処理できず、前述の例外が発生します。
この項では、Oracle BAMサーバーで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
Oracle WebLogic Server JMSのリモート宛先でエンタープライズ・メッセージ・ソースを設定する場合は、グローバル・トラストを適切に設定する必要があります。
グローバル・トラストの設定方法については、Oracle Fusion Middleware Oracle WebLogic Serverの保護のグローバル・トラストの有効化を参照してください。
この項では、Oracle BAM JCAアダプタを使用したSOAとOracle BAMの統合で発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
SOAサーバー・ログで、次が確認されました:
<env:Envelope @ xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body>< env:Fault><faultcode>env:Server</faultcode><faultstring>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'writetoBAM' failed due to: Invalid user name in the interaction spec.". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </faultstring><faultactor/><detail><exception/></detail></env:Fault></env:Body ></env:Envelope>
Oracle WebLogic Serverコンソールを使用して、アウトバウンド接続プール設定のOracle BAMアダプタ構成プロパティを確認します。
資格証明の格納にプレーン・テキストを使用していた場合、
Oracle WebLogic Serverコンソール→「デプロイメント」→「OracleBamAdapter」→「構成」→「アウトバウンド接続プール」に移動して、各接続プール設定のユーザー名とパスワードの情報が正しいことを確認します。
Oracle WebLogic Serverコンソールですべての内容が正しいことを確認し、さらに対応するPlan.xml
ファイルに接続プロパティが保存されていることを確認した場合は、「保存」をクリックして、Oracle WebLogic Serverの再起動を試します(この要件は、Oracle WebLogic Serverコンソールの動作のため、または開かれている既存の接続プール・インスタンスが存在する場合のためのものです)。
ユーザー名とパスワードの格納に資格証明マッピングを使用していた場合は、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドの資格証明マッピングの構成を参照してください。
2つの異なるWLSドメインにSOAとBAMがデプロイされている場合。
SOAからBAM ADC EJBへのRMI呼出し時にセキュリティ例外を検出
SOAサーバー・ログから:
Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=weblogic, Administrators ... Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=weblogic, Administrators at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:835) ...
BAMサーバー・ログから:
<Jan 30, 2009 4:59:40 PM PST> <Warning> <RMI> <BEA-080003> <RuntimeException thrown by rmi server: weblogic.jndi.internal.AdminRoleBasedDispatchServerRef@9, implementation: 'weblogic.jndi.internal.RootNamingNode@4e229e', oid: '9', implementationClassName: 'weblogic.jndi.internal.RootNamingNode' java.lang.SecurityException: [Security:090398]Invalid Subject: principals=weblogic, Administrators. java.lang.SecurityException: [Security:090398]Invalid Subject: principals=weblogic, Administrators at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:835) at weblogic.security.service.SecurityServiceManager.getSealedSubjectFromWire(SecurityServiceManager.java:524) at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:315) at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:875) at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:310) Truncated. see log file for complete stacktrace
両方のOracle WebLogic Serverドメインに信頼できるドメインを設定する必要があります。
「Oracle WebLogic Server管理コンソール」→関連するDomainssoainfraまたはbam→「セキュリティ」に移動して、次を行います:
「ホーム」→「ドメイン」→「セキュリティ」に移動し、「クロス・ドメイン・セキュリティの有効化」を選択します。
「詳細」をクリックし、「資格証明」と「資格証明の確認」フィールドに任意のパスワードを入力して、「保存」をクリックします。
両方のドメインにつき、同じパスワード値を使用してこの構成変更を繰り返します。
両方のOracle WebLogic Serverを再起動します。
Oracle JDeveloperのインストールから、統合SOAデプロイメントを使用。
Oracle WebLogic Server管理サーバーにデプロイされているOracle BAMアダプタの起動時に、Oracle WebLogic Serverコンソールに次のエラーが表示されます:
java.lang.IllegalArgumentException:
[J2EE Deployment SPI:260134]
Unable to identify application for start operation.
Oracle JDeveloperに同梱されているSOAデプロイメントには、デフォルトで非アクティブなステータスのOracle BAMアダプタが含まれており、このシナリオではSOAサーバーのロードと起動の時間が短縮されます。
Oracle BAMアダプタ・コンポーネントのターゲットをOracle WebLogic Server管理サーバーに変更すると、このコンポーネントは自動的に起動されます。
Oracle WebLogic Serverコンソール→「デプロイメント」→「OracleBamAdapter」に移動します。
起動するコンポーネント(OracleBamAdapter)を選択します。
「ターゲット」タブに移動します。
サーバー(「管理サーバー」)を選択し、「保存」をクリックします。
この項では、BPELプロセスのOracle JDeveloperで使用されたOracle BAMセンサー・アクションで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
Oracle BAMセンサー・アクションの問題をトラブルシューティングするには、oracle.soa.bpel.engine.sensorおよびoracle.bam.adapterのログ出力を使用します。ログ出力の構成方法については、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドのOracle Business Activity Monitoringの構成を参照してください。
この項では、Oracle BAM ICommandユーティリティで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
Oracle BAM ICommandまたはOracle BAMサーバーで次のようなエラー警告が発生した場合:
weblogic.jdbc.extensions.PoolDisabledSQLException: weblogic.common.resourcepool.ResourceDisabledException: Pool BAMDataSource is disabled, cannot allocate resources to applications
BAMDataSource
の最大接続プール容量を増加するために、Oracle WebLogic Serverコンソール→「データ・ソース」→「BAMDataSource」→「構成-接続プール」→「最大容量」にログインして、BAMDataSource
を200 (デフォルトは100)に設定する必要があります。
Oracle BAMがインストールされている場合、デフォルトではICommandはポート9001でOracle BAMサーバーを探します。Oracle Weblogic構成ウィザードを使用してOracle BAMの設定および構成を行ったときに、Oracle BAMサーバーのポート番号をデフォルト(9001)から変更した場合は、ユーザーが手動でBAMICommandConfig.xml
ファイルのポート番号を9001から新しいポート番号に変更する必要があります。
次のプロパティを変更します。
<ADCServerPort>9001</ADCServerPort>
BAMICommandConfig.xml
ファイルは、${ORACLE.HOME}/bam/config
にあります。
外部データ・ソース(EDS)に依存するデータ・オブジェクトのエクスポート時に、次のエラーが発生した場合:
BAM-02500: An external data source with an ID of 0 was not found. [ErrorSource="ImportExport", ErrorID="Export.DataObject.InvalidExternalDataSourceID"]
このメッセージは、EDSが使用できないことを示します。
この項では、Oracle Enterprise Manager Fusion Middleware Controlコンソール上のOracle BAMコンテンツで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
セキュリティ用のOracle Enterprise Manager Fusion Middleware Controlページでは、Oracle BAMアプリケーションのロールおよびポリシーは、「検索」をクリックしてロールまたはポリシーを検索するまで表示されません。
この項では、Oracle WebLogic Server管理コンソール上のOracle BAMコンテンツで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
Oracle WebLogic Server管理コンソールで構成を変更した場合、変更を反映するには、「変更のアクティブ化」ボタンをクリックしてそれらの変更をデプロイメント・プランにコミットする必要があります。
「変更のアクティブ化」ボタンが表示されない場合は、次の回避策でボタンを使用できるようにします。
Oracle WebLogic Server管理コンソールでデプロイメント・ページに移動し、「デプロイメントのサマリー」の下にあるOracle BAMアダプタ・コンポーネント(OracleBamAdapter)を選択して、「更新」をクリックします。
アプリケーション更新アシスタントで、「このアプリケーションを新しいデプロイメント・プランの変更とあわせた場所に更新します」を選択して、「次」をクリックします。
これで、「変更のアクティブ化」ボタンを使用できるようになります。
この項では、Oracle Enterprise Manager Fusion Middleware Control上のOracle BAMコンテンツで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
Oracle BAMとの併用が保証されている適切なバージョンのOracle Data Integratorを使用していることを確認します。Oracle Data Integrator 10.1.3.4および10.1.3.5があります。
統合の構成スクリプトを実行するときに、データベースとOracle BAMサーバーが実行中であることを確認します。
この項では、Oracle Business Activity Monitoringの使用中にOracle Databaseで発生する問題のトラブルシューティングについて説明します。内容は次のとおりです。
次のCacheExceptionが発生します:
CacheException: BAM-01265: エラー「ORA-01653: 表DEV_ORABAM.19f9d-6062を拡張できません(128分、表領域DEV_ORABAM)」
DEV_ORABAMが自動拡張設定されているかどうか、十分なディスク領域があるかどうかを確認します。両方とも問題がなければ、新しいデータファイルを表領域に追加して問題を解決する必要があります。
データ破損の症状が見られる場合、JDBCデータ・ソースのStatement-Cache-Size設定を確認します。Oracle BAMの場合は、これを0 (ゼロ)に設定する必要があります。
単一インスタンス・データベース・インストールの場合、文キャッシュ・サイズはデフォルトで0(ゼロ)にすでに設定されています。これをゼロ以外の値に変更しないでください。
Oracle RACデータベースに対するインストールの場合、Oracle RACデータソースごとに文キャッシュ・サイズを手動で0に設定する必要があります。そうしないと、データ破損が起きたり、Oracle BAMアクティブ・データ・キャッシュをバックアップからリストア(バックアップが使用できない場合は再初期化)する必要が生じる場合があります。
Oracle Business Activity Monitoringログを構成および表示するには、Oracle Enterprise Manager Fusion Middleware Controlを使用します。詳細は、Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイドを参照してください。