Class RulesChronoAgendaEventListener

java.lang.Object
org.kie.api.event.rule.DefaultAgendaEventListener
org.droolsassert.RulesChronoAgendaEventListener
All Implemented Interfaces:
EventListener, org.kie.api.event.rule.AgendaEventListener
Direct Known Subclasses:
RulesChronoChartRecorder

public class RulesChronoAgendaEventListener extends org.kie.api.event.rule.DefaultAgendaEventListener
Collect live performance statistic for rules (then block) as aggregated Serializable result.
See Also:
  • Field Details

    • rulesStat

      protected final ConcurrentHashMap<String,PerfStat> rulesStat
    • aggregationPeriodMs

      protected final long aggregationPeriodMs
    • sessionPrefix

      protected String sessionPrefix
    • usePackageName

      protected boolean usePackageName
  • Constructor Details

    • RulesChronoAgendaEventListener

      public RulesChronoAgendaEventListener()
      Creates RulesChronoAgendaEventListener with default aggregation period
    • RulesChronoAgendaEventListener

      public RulesChronoAgendaEventListener(long aggregationPeriodMs)
      Creates RulesChronoAgendaEventListener with aggregation period
      Parameters:
      aggregationPeriodMs -
  • Method Details

    • withPackageName

      public RulesChronoAgendaEventListener withPackageName(boolean usePackageName)
      Include rule package name to qualify rule name, false by default
    • withSessionPrefix

      public RulesChronoAgendaEventListener withSessionPrefix(String sessionPrefix)
      Include unique session prefix to segregate statistic.
      Optional unless you want to use different aggregation periods for the same rule names.
      If several listeners gather statistic under the same name statistic will be merged and 'peer' counter increased.
    • getPerfStat

      public TreeMap<String,Stat> getPerfStat()
    • beforeMatchFired

      public void beforeMatchFired(org.kie.api.event.rule.BeforeMatchFiredEvent event)
      Specified by:
      beforeMatchFired in interface org.kie.api.event.rule.AgendaEventListener
      Overrides:
      beforeMatchFired in class org.kie.api.event.rule.DefaultAgendaEventListener
    • afterMatchFired

      public void afterMatchFired(org.kie.api.event.rule.AfterMatchFiredEvent event)
      Specified by:
      afterMatchFired in interface org.kie.api.event.rule.AgendaEventListener
      Overrides:
      afterMatchFired in class org.kie.api.event.rule.DefaultAgendaEventListener
    • reset

      public void reset()