この付録では、Oracle Business Activity Monitoring (Oracle BAM)アラート・ルールを定義する場合に使用されるイベント、条件およびアクションについて説明します。
項目は次のとおりです。
ユーザーが管理ロールのメンバーである場合のアラートの変更の詳細は、第60.2.5項「アラートの変更に関する必知事項」を参照してください。
イベントは、ルールを起動し、アクションをトリガーします。各ルールに含まれるイベントは1つのみです。Oracle BAMには、次のイベントがあります。
「特定の時間」イベントを選択したときは、秒、分または時間で時間間隔を選択してルール式を完成する必要があります。
「本日の特定の時間」イベントを選択したときは、アラートを起動する時間を選択してルール式を完成する必要があります。
「指定日の特定の時間」イベントを選択したときは、アラートを起動する日付と時刻の両方を選択してルール式を完成する必要があります。
「時間間隔ごと」イベントを選択したときは、次の設定を構成してルール式を完成する必要があります。
時間間隔の選択
アラートを起動する間隔を分数、時間数または日数で設定します。
時間の選択
ルールが有効となりアラートが起動される時間の範囲を設定します。
「指定日の特定の時間以降の日付間隔ごと」イベントを選択したときは、次の設定を構成してルール式を完成する必要があります。
日付間隔の選択
アラートを起動する間隔を毎日、毎週、毎月または毎年に設定します。
日付の選択
ルールが有効となりアラートが起動される日付を設定します。
時間の選択
ルールが有効となりアラートが起動される時刻を設定します。
「レポートの変更時」は、レポートにランタイム変更(レポート定義の変更はなし)が発生したときに起動し、そのたびに変更リストがOracle BAMサーバーのレポートに配信されます。レポートの変更には、データ・オブジェクトのデータに対する変更、および「すぐに有効」設定による変更を含めることができます。
「レポートの変更時」イベントを選択したときは、次の設定を構成してルール式を完成する必要があります。
レポートの選択
変更を監視するレポートを選択します。
<user_name>として実行 (このオプションは、アラートを作成するユーザーが管理者ロールのメンバーである場合のみ表示されます。)
選択したレポートを実行するOracle BAMユーザーを選択します。選択できる実行ユーザーは1人のみです。デフォルトの実行ユーザーは、アラートを作成するログイン済のOracle BAMユーザーです。
レポート変更に関する通知を受信するのは、実行ユーザーと同等かそれ以上のセキュリティ権限がある受信者のみです。また、レポートで使用するデータ・オブジェクトでは、Oracle BAMアーキテクトによる実装に従って、行レベルのセキュリティが優先されます。
先頭にハッシュ(#)がある名前は、ディストリビューション・リストです。
レポートのデータ・オブジェクト行に変更があり、アラート受信者の誰にもその行へのアクセス権がない場合、受信者への通知はありません。
「データ・オブジェクトのデータ・フィールド変更時」イベントを選択したときは、次の設定を構成してルール式を完成する必要があります。
注意: 「データ・オブジェクトのデータ・フィールドが特定の条件を満たす場合」イベントは、行の挿入と行の更新に対してのみ対応し、行の削除には対応しません。ただし、「データ・オブジェクトのデータ・フィールド変更時」イベントは行の削除に対応します。 |
データ・フィールドの選択
変更を監視するデータ・オブジェクト・フィールドを選択します。「フィールドの選択」ダイアログ・ボックスの左上にあるセクションでデータ・オブジェクトを検索し、次に右上にあるセクションでフィールドを選択します。最後に、グループ化する1つ以上のフィールドを選択し、選択したフィールドに対して集計関数を選択します。
<user_name>として実行 (このオプションは、アラートを作成するユーザーが管理者ロールのメンバーである場合のみ表示されます。)
選択したレポートを実行するOracle BAMユーザーを選択します。選択できる実行ユーザーは1人のみです。デフォルトの実行ユーザーは、アラートを作成するログイン済のOracle BAMユーザーです。
レポート変更に関する通知を受信するのは、実行ユーザーと同等かそれ以上のセキュリティ権限がある受信者のみです。また、レポートで使用するデータ・オブジェクトでは、Oracle BAMアーキテクトによる実装に従って、行レベルのセキュリティが優先されます。
先頭にハッシュ(#)がある名前は、ディストリビューション・リストです。
レポートのデータ・オブジェクト行に変更があり、アラート受信者の誰にもその行へのアクセス権がない場合、受信者への通知はありません。
「データ・オブジェクトのデータ・フィールド変更時」イベントを選択したときは、次の設定を構成してルール式を完成する必要があります。
レポートの選択
変更を監視するレポートを選択します。
このデータ・フィールドにはxの条件があります
「アラート・ルール・エディタ」ダイアログ・ボックスで、監視するデータ・オブジェクトを選択します。これで、アラートを起動する条件を設定できます。
行フィルタ - データ・オブジェクトのフィールドにフィルタを作成して、条件を満たしたときにルールを起動する条件を示します。レポート・フィルタで使用できるすべての機能が用意されています。詳細は、『Oracle Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド』のデータのフィルタに関する項を参照してください。
グループ・フィルタ - 「グループ・フィルタ」は、レポート・フィルタで使用できるすべてのフィルタ機能が用意されている点で「行フィルタ」に類似しています。ここでの特別な機能は、集計関数が適用されているフィールドに対してフィルタを作成できることです。フィルタ式の作成方法の詳細は、『Oracle Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド』のデータのフィルタに関する項を参照してください。
グループ - 1つ以上のフィールドを選択してグループを作成し、「行フィルタ」タブまたは「グループ・フィルタ」タブで作成したフィルタに複雑性を追加します。
<user_name>として実行 (このオプションは、アラートを作成するユーザーが管理者ロールのメンバーである場合のみ表示されます。)
選択したレポートを実行するOracle BAMユーザーを選択します。選択できる実行ユーザーは1人のみです。デフォルトの実行ユーザーは、アラートを作成するログイン済のOracle BAMユーザーです。
レポート変更に関する通知を受信するのは、実行ユーザーと同等かそれ以上のセキュリティ権限がある受信者のみです。また、レポートで使用するデータ・オブジェクトでは、Oracle BAMアーキテクトによる実装に従って、行レベルのセキュリティが優先されます。
先頭にハッシュ(#)がある名前は、ディストリビューション・リストです。
レポートのデータ・オブジェクト行に変更があり、アラート受信者の誰にもその行へのアクセス権がない場合、受信者への通知はありません。
「データ・オブジェクトのデータ・フィールドが特定の条件を満たす場合」イベントを選択したときは、次の設定を構成してルール式を完成する必要があります。
注意: 「データ・オブジェクトのデータ・フィールドが特定の条件を満たす場合」イベントは、行の挿入と行の更新に対してのみ対応し、行の削除には対応しません。ただし、「データ・オブジェクトのデータ・フィールド変更時」イベントは行の削除に対応します。 |
このデータ・フィールドにはxの条件があります
「アラート・ルール・エディタ」ダイアログ・ボックスで、監視するデータ・オブジェクトを選択します。これで、アラートを起動する条件を設定できます。
行フィルタ - データ・オブジェクトのフィールドにフィルタを作成して、条件を満たしたときにルールを起動する条件を示します。レポート・フィルタで使用できるすべての機能が用意されています。詳細は、『Oracle Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド』のデータのフィルタに関する項を参照してください。
グループ・フィルタ - 「グループ・フィルタ」は、レポート・フィルタで使用できるすべてのフィルタ機能が用意されている点で「行フィルタ」に類似しています。ここでの特別な機能は、集計関数が適用されているフィールドに対してフィルタを作成できることです。フィルタ式の作成方法の詳細は、『Oracle Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド』のデータのフィルタに関する項を参照してください。
グループ - 1つ以上のフィールドを選択してグループを作成し、「行フィルタ」タブまたは「グループ・フィルタ」タブで作成したフィルタに複雑性を追加します。
<user_name>として実行 (このオプションは、アラートを作成するユーザーが管理者ロールのメンバーである場合のみ表示されます。)
選択したレポートを実行するOracle BAMユーザーを選択します。選択できる実行ユーザーは1人のみです。デフォルトの実行ユーザーは、アラートを作成するログイン済のOracle BAMユーザーです。
先頭にハッシュ(#)がある名前は、ディストリビューション・リストです。
レポート変更に関する通知を受信するのは、実行ユーザーと同等かそれ以上のセキュリティ権限がある受信者のみです。また、レポートで使用するデータ・オブジェクトでは、Oracle BAMアーキテクトによる実装に従って、行レベルのセキュリティが優先されます。
レポートのデータ・オブジェクト行に変更があり、アラート受信者の誰にもその行へのアクセス権がない場合、受信者への通知はありません。
「このルールの起動時」イベントは、「ルールの起動」アクションを使用している他のルールに従ってルールを作成する場合に使用します。階層内で「このルールの起動時」を使用すると、複数のルールを作成できます。
条件はアラートが起動される期間を制限するためのオプション設定です。条件はいくつでも、どのような組合せでも選択できます。Oracle BAMには、次の条件があります。
ルールを起動する時間範囲を示す2つの時刻を選択します。
ルールを起動する日付範囲を示す2つの日付を選択します。
ルールを起動する曜日を選択します。
アクションは、ルール式で満たした条件とイベントの結果です。アクションはいくつでも、どのような組合せでも構成できます。Oracle BAMには、次のアクションがあります。
レポートを選択し、そのレポートをレポート・リンクまたはレンダリングされたレポートとして送信するように選択して、受信者を選択します。
受信者は、Oracle BAMユーザーから選択するか、Oracle BAMでプロパティが設定されている場合は、外部電子メール・アカウントから選択できます。詳細は、第60.9項「外部電子メール・アカウントへのアラートの送信」を参照してください。
送信する電子メール・メッセージを作成し、受信者を選択します。
受信者は、Oracle BAMユーザーから選択するか、Oracle BAMでプロパティが設定されている場合は、外部電子メール・アカウントから選択できます。詳細は、第60.9項「外部電子メール・アカウントへのアラートの送信」を参照してください。
指定したユーザーに送信するレポートを選択します。最初の受信者が指定時間内に応答しない場合にメッセージを受信する2番目の受信者を選択します。2番目の受信者は、1人のユーザーまたはディストリビューション・リストのいずれかです。
アラート・ルールの条件を満たすと、レポート・リンクが受信者に送信されます。このアラートに応答するために、受信者は、レポート・リンクをクリックしてレポートを表示する必要があります。受信者がレポートを表示しないと、そのレポートは2番目のユーザー(またはディストリビューション・リスト)にエスカレートされます。
受信者は、Oracle BAMユーザーから選択するか、Oracle BAMでプロパティが設定されている場合は、外部電子メール・アカウントから選択できます。詳細は、第60.9項「外部電子メール・アカウントへのアラートの送信」を参照してください。
このオプションを使用すると、パラメータ入力が必要なレポートをOracle BAMユーザーに電子メールで送信できます。このアクションでは、完全に構成可能な電子メール・メッセージと、レポートに渡されるパラメータ値を作成できます。
Oracle BAMダッシュボードでのプロンプトおよびパラメータの作成方法については、『Oracle Fusion Middleware User's Guide for Oracle Business Activity Monitoring』のプロンプトおよびパラメータの使用に関する項を参照してください。
このオプションを使用すると、アラート・メッセージに指定した条件に従って、レポートを他のユーザーに送信できます。このアクションは、「データ・オブジェクトのデータ・フィールド変更時」および「データ・オブジェクトのデータ・フィールドが特定の条件を満たす場合」イベントで使用できます。
このアラート・アクションでは、「メッセージの作成」と「パラメータの設定」の2つのプロパティを構成する必要があります。
メッセージを作成するには:
ルール式で、「メッセージの作成」をクリックします。
受信者に送信する件名およびメッセージを入力します。図F-1に示すように、メッセージ本文で、送信するレポートへのリンクを選択することもできます。
受信者がレポートを開くときにレポートに渡されるパラメータ値を構成する手順は、次のとおりです。
ルール式で、「パラメータの設定」をクリックします。
「アラート・アクション・パラメータの作成および編集」ダイアログ・ボックスで、「ユーザー」と「レポート」の各フィールドに事前定義済の値を移入するか、または「データ・オブジェクト」フィールドから動的に移入します。各ボタンを使用してフィールド値を設定します。「フィールドの選択」を使用すると、データ・オブジェクトのフィールドを値として選択できます。
「ユーザー」フィールド
「ユーザーの選択」ボタンを使用してこのフィールドに移入する場合は、図F-3に示すように、Oracle BAMアドミニストレータにリスト表示されるOracle BAMユーザーから受信者を選択します。
「レポート」フィールド
「レポートの選択」ボタンを使用してこのフィールドに移入する場合、このフィールドに表示される値は、レポートの表示名です。
データ・オブジェクトからこのフィールドに移入する場合の値は、レポートの表示名ではなくレポートIDである必要があります。レポートIDを取得するには、レポートをクリックし、「ショートカットのコピー」リンクをクリックします。次のようなリンクが示されているウィンドウが開きます。
http://myServer/oraclebam/ReportServer/default.aspx?Event=ViewReport&
ReportDef=1&Buttons=False
このリンクでは、ReportDefの値(1
)がレポートEmp_Report
のレポートIDです。Oracle Business Activity Monitoring内のすべてのレポートに、一意のレポートIDがあります。
レポート・パラメータ値を構成します。
レポートに必要なすべてのパラメータを入力します。
「レポート・パラメータ値」リストで、「新規」をクリックし、パラメータを構成します。
「名前」フィールドにパラメータ名を入力して、「フィールドの選択」をクリックし、パラメータが機能するフィールドを選択します。
パラメータ値を入力するか、「フィールドの選択」ダイアログ・ボックスでフィールドを選択し、「OK」をクリックします。
特殊な値には、_ALL_、_BLANK_、_NULL_など、アンダースコア(_)を使用します。
選択したフィールドIDが「値」テキスト・ボックスに表示されます。「OK」をクリックして確認し、パラメータ・リストに戻ります。
このアクションでは、静的データ・オブジェクトの行から受信者、メッセージの内容およびメッセージの件名を選択できます。条件付通知に使用するデータ・オブジェクト行を選択するためのフィルタ基準を構成画面で指定できます。このアクションは、任意のイベント、条件またはアクションで構成できます。
このアクションが起動されると、フィルタ基準に一致するデータ・オブジェクト内の行を使用して、(アクションで指定されているデータ・オブジェクト・パラメータを使用して)受信者に送信される電子メール・メッセージが作成されます。メッセージ作成は、F.3.4項「パラメータ化されたメッセージを送信」でのメッセージ作成に似ています。
アクションを構成する手順は、次のとおりです。
「このデータ・フィールドにはxの条件があります」リンクをクリックし、データ・オブジェクトおよび目的の行を選択するためのフィルタ基準を選択します。
注意: データ・オブジェクト・フィールドを表示するために、まずデータ・オブジェクトおよびフィルタ基準を選択する必要があります。 |
「メッセージの作成」リンクをクリックし、F.3.4項「パラメータ化されたメッセージを送信」と同様に、必要に応じてデータ・オブジェクト・フィールドを使用して電子メール・メッセージを作成します。
「パラメータの設定」リンクをクリックし、F.3.4項「パラメータ化されたメッセージを送信」と同様に(「ユーザー」で)ユーザーおよびレポート(オプション)を選択します。
「OK」をクリックしてルールを保存します。
「このルールの起動時」イベントを含む依存ルールを選択します。依存ルールの構成例については、第60.5項「複合アラートの作成」を参照してください。
ルールに含まれるアクションのいずれかが失敗したときに起動する依存ルールを選択します。依存ルールの構成例については、第60.5項「複合アラートの作成」を参照してください。
データ・オブジェクトを選択し、フィルタ条件が満たされたときに行がデータ・オブジェクトから削除されるフィルタ・エントリを構成します。
削除するデータが10,000行を超える場合は、次の項目について考慮してください。
「データ・オブジェクトから行を削除」アクションの実行時に、削除するデータのデータ・オブジェクトに依存しているレポートが開いている場合は、ビューセットでアクティブなデータが停止し、削除の完了後に再ロードされます。また、依存しているデータ・オブジェクトに対する削除アクションの進行中にユーザーがレポートを開こうとすると、レポートがスタック状態になったり、出力が未定義状態になる場合があります。このアクションが進行中の間は、データ・オブジェクトに依存するレポートを開かないことをお薦めします。アクションが終了すると、レポートはアクティブなデータの受信を続行します。
さらに、「データ・オブジェクトから行を削除」の実行時に、データ・オブジェクトに依存するアラートが内部で一時的に無効化されます。このアクションが実行されている間、そのデータ・オブジェクトを使用して作成された新規アラート、または無効化されて再度有効化された依存する既存アラートはシステムでスタック状態になります。このアクションが進行中の間は、データ・オブジェクトに依存するアラートを作成、無効化または再有効化しないことをお薦めします。アクションが終了すると、アラートは通常の機能を続行します。
このアクションを選択した場合は、次の手順に従ってWebサービスを構成します。
WebサービスまたはWSILエンドポイントURLを入力します。URLは、「http」スキームで開始し、有効な拡張子(?WSDL、.WSDLまたは.WSIL)で終了している必要があります。
例:
http://host_name:port_number/OracleBAMWS/WebServices/DataObjectOperationsByID?WSDL http://api.google.com/GoogleSearch.wsdl http://host_name:port_number/inspection.wsil
安全性の高いWebサービスの場合は、ボックスを選択し、必要な資格証明を入力します。
注意: Oracle BAMでは、Webサービスをホストしているサーバーが保護サーバーの背後にあるかどうかを判断できません。WebサービスがHTTP基本認証ベース・サーバーの背後にあるかどうかを示すことは開発者の責任であり、資格証明が必要な場合は、有効な資格証明を入力する必要があります。 一方向SSLを実現するには、Webサービス・クライアントのアラートで検索可能な信頼ストアを参照し、提示される証明書が存在するかどうかを判断する必要があります。これを行うには、 |
安全性の高いWebサービスの場合は、「セキュアなWebサービス」チェック・ボックスを選択し、必要な資格証明を入力します。
「サービスの表示」をクリックして、フィールドに入力したURLの使用可能なサービスを表示します。
WSDL/WSILと資格証明を入力して操作リストを取得し、操作を選択すると、最初は無効で空であった「エンドポイントURL」フィールドに値が移入されます。
これには、WebサービスのWSDLファイルに定義されているエンドポイントURLが移入されます。このエンドポイントURLが古い場合(たとえば、Webサービス実装を別のエンドポイントに移動して新規のWSDLを指定していないが、新規エンドポイントURLを認識している場合など)や不正確な場合、またはオーバーライドする場合は、このURLを編集できます。Oracle BAMイベント・エンジンがWebサービスを起動する場合は、構成済のエンドポイントURLを使用してWebサービスを起動します。
「パラメータのマップ」をクリックします。
イベントがデータ・オブジェクトの変更に基づいている場合(例: 「データ・オブジェクトのデータ・フィールド変更時」、「レポートのデータ・フィールドが特定の条件を満たす場合」、「データ・オブジェクトのデータ・フィールドが特定の条件を満たす場合」)は、パラメータをマップできるフィールドの選択リストが表示されます。
パラメータをマップするには 「データ・オブジェクト・フィールド」オプションを選択し、「Webサービスのアラート - パラメータ・マッピング」ダイアログ・ボックスに表示された各Webサービス・パラメータの横にあるリストからデータ・オブジェクト・フィールドを選択します。
イベントがデータ・オブジェクトの変更に基づいていない場合は、値をテキスト・ボックスに入力します。
「OK」をクリックして「Webサービスのアラート - パラメータ・マッピング」ダイアログ・ボックスと「Webサービス設定のアラート」ダイアログを閉じます。
具体的な例については、F.3.9.1項「Webサービスのコールの使用方法: 例」を参照してください。
注意: Webサービスがコールに応答しない場合、レスポンスなしや失敗に関する使用可能なログはありません。 |
次に、Webサービスを起動するアラートを作成する手順について詳しく説明します。ここでは、サンプルのEmployeesデータ・オブジェクトを使用してデータ・オブジェクトに行を挿入します。
Webサービスのコールを使用する手順は、次のとおりです。
Oracle BAMインスタンスに/Samples/Employeesデータ・オブジェクトが存在していることを確認します。
Oracle BAM Webアプリケーションにログインし、Oracle BAMアクティブ・スタジオを開きます。
「アラート」タブを選択し、「新規アラートの作成」をクリックします。
「ルールの作成」をクリックします。
「イベントの選択」リストで、最初のオプションの「特定の時間」を選択します。
「ルールの式」パネルで「時間間隔の選択」をクリックし、時間として「1秒」を選択します。
「OK」をクリックし、次に「次へ」をクリックします。
「アクションの選択」リストで、「Webサービスのコール」アクションを選択します。
「ルールの式」パネルで、「Webサービスの設定」をクリックします。
「Webサービス設定のアラート」ダイアログが開きます。
インスタンスにDataObjectOperationByName WebサービスのWSDLを指定します。URLは次のようになります。
http://host_name:port_number/OracleBAMWS/WebServices/
DataObjectOperationsByName?WSDL
host_name
とport_number
は、Oracle BAMインスタンスのホスト名とポート番号に置き換えます。
「セキュアなWebサービス」チェック・ボックスを選択し、資格証明を指定します。
「操作の表示」をクリックし、リストされている操作から「挿入」操作を選択します。
これによって、WebサービスのエンドポイントURLが移入されます。Webサービスのエンドポイントが変更されている場合、または他の実装でこのエンドポイントをオーバーライドする場合は、新規のエンドポイントURLを指定します。それ以外の場合はそのまま使用します。
「パラメータのマップ」をクリックし、このWebサービスのパラメータにマップする値を指定します。
この例のWebサービス操作では、唯一のパラメータであるXMLペイロードに対する値が必要です。このXMLペイロードには、データ・オブジェクトに挿入する行が含まれています。
xmlpayload
値に次のテキストを入力してクリックします。
<DataObject Name="Employees" Path="/Samples"><Contents><Row><Column Name="Salesperson" Value="Greg Guan Gan" /><Column Name="Sales Area" Value="Northeast" /><Column Name="Sales Number" Value="1234" /></Row></Contents></DataObject>
「OK」をクリックして「Webサービス設定のアラート」ダイアログを閉じ、「ルールの作成および編集」ダイアログで「OK」をクリックします。
その後にOracle BAMアーキテクトが開くため、/Samples/Employeesデータ・オブジェクトのコンテンツをチェックして、「Salesperson」の名前が「Greg Guan Gan」の新規行がデータ・オブジェクトに挿入されていることを確認します。
このアクションを使用して、Oracle Data Integratorにあるシナリオをトリガーします。このアクションを使用できるのは、Oracle Data Integrator統合ファイルがインストールされている場合のみです。詳細は、Oracle Fusion Middleware Oracle SOA Suite開発者ガイドのOracle Data Integrator統合ファイルのインストールを参照してください。
Oracle Data Integratorエージェントが実行中で、そのエージェントのホスト、ポートおよびログイン資格証明がOracle Enterprise Manager Fusion Middleware Controlに適切に構成されている必要があります。Oracle BAMではOracle Data Integratorエージェントが実行中であることの検証はされません。エージェントが実行中でない場合、アラートは起動しますが、必要なアクションは実行されません。また、Oracle Data IntegratorシナリオをトリガーするOracle BAMアラートは、Oracle Data Integratorシナリオ・コールの成功または失敗を追跡せず、Oracle BAM側で記録されることもありません。詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』のOracle Data Integratorプロパティの構成に関する項を参照してください。
「アラートの作成」ダイアログで、ドロップダウン・リストからシナリオの名前とバージョンを選択して、起動するOracle Data Integratorシナリオを選択します。
シナリオで変数が使用されている場合は、値を選択(値を入力するか、データ・オブジェクトからフィールド値を選択)して、同じ画面の「シナリオ変数」に渡します。
外部アクションのコールは、カスタム・アクションの開発に使用します。Oracle BAMが提供するアクションではユーザーの要件を満たすことができない場合は、この機能を使用してアクション・セットを拡張します。
このアクションの構成方法の詳細は、第60.8項「外部アクションのコール」を参照してください。