この項では、EPLルールを管理するためにOracle CEP Visualizerを使用して実行可能な通常のアプリケーション・タスクを説明します。次のトピックが含まれます。
注意: Oracle CEP 11g リリース1(11.1.1.4.0)では、イベント処理言語(EPL)はOracle CQLで置換されます。Oracle CEPは、EPLの下位互換性をサポートします。詳細は、第6章「Oracle CQLルールの管理」を参照してください。 |
注意: ルールおよびOracle高可用性アダプタへの変更は、同一グループ内の他のサーバーへ伝播されます。つまり、すべてのルールおよびOracle高可用性アダプタの構成は、自動的に同期されることになります。他の構成の変更は同期されません。たとえば、マルチサーバー・ドメイン内の1つのサーバーで記録/再生またはJMSアダプタの構成を変更する場合、これらの変更は同一グループ内の他のサーバーには同期されません。詳細は、第18章「マルチサーバー・ドメインの管理」を参照してください。 |
詳細については、次を参照してください。
『Oracle Complex Event Processing EPL言語リファレンス』
1つ以上のEPLプロセッサを使用する既存のOracle CEPアプリケーションで新規ルールを作成できます。
Oracle CEP Visualizerを使用して、EPLプロセッサでルールを作成できます。
EPLプロセッサでルールを作成するには:
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
appname>ステージノードを展開し、ドメイン・ツリーのEPNステージのリストを表示します。ここで、「appname」はアプリケーション名です。
EPLルールを作成する対象のEPLプロセッサをクリックします。
図7-1で示すように、「プロセッサ」パネルが表示されます。
右ペインで、「ルール」タブをクリックします。
図7-2で示すように、「ルール」タブが表示されます。
「ルールID」フィールドをクリックし、作成するルール名を入力します。
「ルール」フィールドをクリックし、EPL問合せ文字列を入力します。
「ルールの作成」をクリックします。
図7-3で示すように、確認ダイアログが表示されます。
「OK」をクリックします。
1つ以上のEPLプロセッサを使用する既存のOracle CEPアプリケーションから既存ルールを削除できます。
Oracle CEP Visualizerを使用して、EPLプロセッサでルールを削除できます。
EPLプロセッサでルールを削除するには:
Oracle CEP Visualizerのルール置換機能を使用して、既存ルールを変更できます。ただし、Oracle CEP Visualizerは内部で最初にルールを削除し、その後で置換されたテキストを使用してもう一度ルールを追加するため、この機能は十分に注意して使用する必要があります。ルールを削除すると、ルールがもう一度追加される前にすべての状態が損失してしまいます。このため、ステートレス・ルールのみを置換することをお薦めします。
Oracle CEP Visualizerを使用して、EPLプロセッサでルールを置換できます。
EPLプロセッサでルールを置換するには、次の手順を実行します。
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
appname>ステージノードを展開し、ドメイン・ツリーのEPNステージのリストを表示します。ここで、「appname」はアプリケーション名です。
EPLルールを作成する対象のEPLプロセッサをクリックします。
図7-1で示すように、「プロセッサ」パネルが表示されます。
右ペインで、「ルール」タブをクリックします。
図7-5で示すように、「ルール」タブが表示されます。
置換するルールを選択します。
「ルール」フィールドをクリックし、新しいEPL問合せ文字列を入力します。
「ルールの置換」をクリックします。
図7-3で示すように、確認ダイアログが表示されます。
「OK」をクリックします。
com.bea.wlevs.dataservices
アプリケーションには、MonitorProcessor
が含まれます。これは、診断ダッシュボードへ出力されるイベントのフィルタに使用されるデフォルト・ルールに順番に関連付けられます。このフィルタリングをカスタマイズする場合、このルールを変更したり新規ルールを追加できます。
EPLルールを使用して変更できるのは、データサービスのアプリケーション・イベント・フィルタ・ルールのみです。
EPLで使用されるイベント・タイプはcom.bea.wlev.dataservice.cep.DSMonitorEvent
で、これには次のプロパティが含まれます。
profile
: 診断プロファイル名。
date
: 日付およびタイムスタンプ。
metric
: メトリック番号。
start
: 開始ステージ名。
end
: 終了ステージ名。
type
: メトリックのタイプ。有効な値はavg-latency
、avg-throughput
、またはmax-latency
です。
application
: アプリケーション名。
たとえば、モニター・イベントをタイプとメトリックでフィルタ処理する場合は、EPLルールを以下のように変更します。
SELECT * FROM DSMonitorEvent RETAIN 1 EVENT WHERE metric < 300 AND type = 'avg-latency' SELECT * FROM DSMonitorEvent RETAIN 1 EVENT WHERE metric < 300 AND type = 'avg-throughput' SELECT * FROM DSMonitorEvent RETAIN 1 EVENT WHERE metric < 300 AND type = 'max-latency'
メトリック番号が300未満の3つのイベントを継続的に表示し、タイプ別にイベントをグループ化する場合、次のEPLルールを試行します。
SELECT *, COUNT(metric) FROM DSMonitorEvent RETAIN BATCH OF 3 EVENTS PARTITION BY type WHERE metric < 300 HAVING COUNT(metric) = 3 OUTPUT LAST 1 EVERY 3 EVENTS
平均メトリック番号が300未満の3つのイベントを継続的に表示し、タイプ別にイベントをグループ化する場合、次のEPLルールを試行します。
SELECT *, AVG(metric) FROM DSMonitorEvent RETAIN BATCH OF 3 EVENTS PARTITION BY type HAVING AVERAGE(metric) < 300 OUTPUT LAST 1 EVERY 3 EVENTS
詳細は、『Oracle Complex Event Processing EPL言語リファレンス』を参照してください。
Oracle CEP Visualizerを使用して、データ・サービスのアプリケーション・イベント・フィルタのEPLルールを変更できます。
EPLを使用してデータサービスのアプリケーション・イベント・フィルタ・ルールを変更するには:
左ペインで、「ドメイン」>「サーバー」>「アプリケーション」>com.bea.wlevs.dataservices>ステージ>MonitorProcessorをクリックします。ここで、「ドメイン」
はドメイン名、「サーバー」
はサーバー名です。
右ペインで、「ルール」タブをクリックします。
図7-11で示すように、「ルール」タブが表示されます。
新規ルールを作成するには、「ルールID」フィールドにルール名を入力し、「ルール」フィールドにEPL問合せ文字列を入力して、「ルールの作成」をクリックします。
詳細は、7.1項「EPLプロセッサにおけるルールの作成」を参照してください。
既存ルールを削除するには、表でルールを選択して「ルールの削除」をクリックします。
詳細は、7.2項「EPLプロセッサからのルールの削除」を参照してください。
デフォルト・ルールを変更するには、「ルール」表のルール名をクリックし、作業領域の「ルール」フィールドで変更し、「ルールの置換」をクリックします。
詳細は、7.3項「EPLプロセッサにおけるルールの置換」を参照してください。