Drools Fusion の使用を開始しましたが、temporal オペレーターの実行中に奇妙な問題に直面しました。理由により、たとえばオペレーターが正常に動作した後でも、それを機能させることはできません。
これが私のイベントの宣言です-特定のタイプの間隔が含まれているだけです:
WorkingDayInterval を宣言する @role(イベント) @timestamp(event_ts_local) @duration(duration_in_seconds) 終わり
これが私のルールです:
ルール「処理期間中のアイドル」 いつ $processing : WorkingDayInterval( サブカテゴリ == "処理中") $longIdle : WorkingDayInterval (これは $processing の間、サブカテゴリ == "idle"、duration_in_seconds > 600) それから System.out.println ("不良アイドル イベント:"); System.out.println ($processing.event_ts_local); System.out.println ($processing.duration_in_seconds); System.out.println ($longIdle.event_ts_local); System.out.println ($longIdle.duration_in_seconds); 終わり
実行しても何も発生しません。
ただし、途中から後に変更すると、次の結果が得られます。
不良アイドル イベント: 月 2 月 25 日 05:19:00 MSK 2013 2350 月 2 月 25 日 05:20:00 MSK 2013 901
値を見ると、開始タイムスタンプと期間に基づいて、2 番目のイベントが最初のイベント内にあるため、期間が発生するはずであることがはっきりとわかります。
Drools Fusion のバグですか、それとも何か間違っていますか?
ところで-私はクラウドモードで実行しています