Setting ruleset monitoring options

You can enable ruleset execution monitoring and use filters to specify what is stored in Decision Warehouse when you execute a ruleset.

About this task

To monitor ruleset execution, you use the monitoring options box of the Ruleset View. Decision Warehouse captures and stores all execution trace data. The trace includes the number of rules executed, a list of rule flow tasks executed, and a list of the objects in the working memory. To optimize performance, you can specify how to store the ruleset parameter values and specify filters to remove information about the working memory.

Procedure

  1. Make sure that the execution trace is enabled.
    1. Click the Explorer tab.
    2. In the Navigator panel, click the relevant ruleset.
    3. In the Ruleset View, click Show Monitoring Options.

      A status message indicates whether execution tracing is enabled.

    4. At the bottom of the monitoring options box, click the Edit icon.
    5. Make sure that the Enable tracing in the Decision Warehouse check box is selected.
  2. Specify what information you want the trace to store.
    1. Select a BOM serialization option:
      BOM format with optional filter
      Select this option if you want BOM serialization to convert the list of objects in the ruleset parameters into a memory buffer. Optionally, you can set a filter on the objects used by the ruleset parameters to remove information about these objects from the trace.

      For example, the following filter removes a large property from the borrower class and a long field from the loan class:

      borrower.some.heavy.property,loan.longfield
      Restriction:

      You cannot use the monitoring.inout.filters property to filter elements in the BOM representation of ruleset parameters.

      This restriction only applies to rulesets that are built with the decision engine.

      Note:

      BOM serialization can result in poor performance.

      Native format
      Select this option to turn off BOM serialization of objects in the ruleset parameters.

      If the ruleset is based on a dynamic XOM, the input and output parameters are stored as XML. If the ruleset is based on a Java™ XOM, you can get a string representation of the ruleset parameters by setting a call to the java.lang.Object.toString method.

    2. Use the options described in the table to specify what execution information you want the trace to store.
    3. Click the Save icon.
      Table 1. Execution trace options
      Trace option Description
      Execution Date Provides the execution start date.
      Execution Duration Provides a measure of time that the engine took to execute the ruleset.
      Total Number of Tasks Executed Provides the number of task instances that the engine executed.
      Total Number of Tasks Not Executed Provides the number of rule flow tasks that the engine did not execute.
      Total Number of Rules Fired Provides the number of rule instances that the engine executed.
      Total Number of Rules Not Fired Provides the number of rules that the engine did not execute.
      Execution Events Provides the full execution tree for the executed ruleset. The tree is composed of executed task instances and executed rule instances.
      List of All Tasks Lists the rule flow tasks in the ruleset.
      List of Tasks Not Executed Lists the rule flow tasks that the engine did not execute. To get the list of rule instances that were executed, use the Execution Events trace option.
      List of All Rules Lists all the rules in the ruleset.
      List of Rules Not Fired Lists all the rules that the engine did not execute. To get the list of task instances that were executed, use the Execution Events trace option.
      Bound Object by Rule Use in conjunction with the Execution Events trace option. When set, the rules that are executed in the execution tree are bound to the objects to which they were applied.
      System Properties Lists the JRE system properties that Rule Execution Server uses. For example, JAVA_HOME.
      Working Memory with optional filter

      Lists the contents of the working memory. Use the optional filter to define specific classes that you want to record. The following filter records the objects specified in MyClass and MyOtherClass:

      com.xyz.MyClass,com.xyz.MyOtherClass

Results

When the ruleset execution trace is enabled, the monitoring options section summarizes the trace options that you have selected.