为了账号安全,请及时绑定邮箱和手机立即绑定

Drools Fusion 规则上的滑动窗口

Drools Fusion 规则上的滑动窗口

烙印99 2021-06-22 17:00:03
我正在制作一个应用程序,其中通过每 5 秒的间隔 HTTP 请求收集来自虚拟机的与 CPU 使用率、内存使用率、磁盘使用率等相关的数据。收集的数据如下所示:timeStamp (long): 1533554434memUsagePerc (double): 5.384678498028317cpuUsagePerc (double): 24.8756219diskSizePerc (double): 31.880938915483163diskUtilPerc (double): 1.0505864我在 Drools Fusion 上创建了一些规则,试图查看以下内容:当 CPU 使用率在过去 10 秒内达到例如超过 10% 时,然后在屏幕上打印一些内容,但我的问题是即使我在规则中输入了命令over window:time(Xs)即使X seconds尚未通过,该规则仍会被触发。这是 CPU 使用率的规则:declare Netdata    @role( event )endrule "CPU usage over 10%"    salience -1    when        $cpu : Netdata(cpuUsagePerc > 10)        over window:time (10s)        from entry-point Netdata    then        System.out.println("CPU usage over 10%");endNetdata是从 HTTP 响应中收集所有数据并每次创建一个对象的类。然后 Drools Fusion 使用该对象。请注意,没有over window:time(Xs)零件的更“虚拟”规则也会被触发。此外,以下错误出现在屏幕上,旁边over window:time(Xs):JAVA_IDENTIFIER expected, got 'window'我正在使用 Drools 5.1.1 版。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 254 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信