Skip navigation links
Oracle Fusion Middleware Java API Reference for Oracle Business Rules
12c Release 2 (12.2.1.4.0)

E95699-01

Package oracle.rules.rl.trace

Classes that define the content of a decision trace.

See: Description

Package oracle.rules.rl.trace Description

Classes that define the content of a decision trace. The XML schema for a decision trace can be accessed as a resource with the path: oracle/rules/rl/trace/decisiontrace.xsd . When decision tracing is enabled, a trace of rule engine activity is constructed as events occur within the engine.

The following RL functions provide control over decision tracing in the rule engine and provide access to the decision trace.

The decision trace level may be one of the following:

The decision trace level may be set by invoking the setDecisionTraceLevel() function with one of the levels defined above. In addition, it may be configured in a RuleSession (or RuleSessionPool) by including the RuleSession.CFG_DECISION_TRACE_LEVEL initialization parameter and one of the levels above in the configuration Map passed to the RuleSession or RuleSessionPool constructor. This sets the decision trace level at the time a RuleSession is created and invoking the reset() function guarantees that the the level after its execution is returned to the configured value should it have been changed during rule execution.

The size of a trace is limited by limiting the number of entries in a decision trace. This necessary to avoid infinite rule fire loops (a bug in the rules) from creating a trace that consumes all available heap in the JVM. The default limit is 10000 entries. The limit can be inspected and/or set via a the getDecisionTraceLimit() and setDecisionTraceLimit() RL functions. The limit may also be configured in a RuleSession or RuleSessionPool by including the RuleSession.CFG_DECISION_TRACE_LIMIT initialization parameter with the desired limit in the configuration Map passed to the RuleSession or RuleSessionPool constructor.

For rules applications that use runUntilHalt(), it is the reponsibility of the application to invoke getDecisionTrace() before the trace limit is hit.

Analysis of a decision trace is facilitated by the TraceAnalysis class.

Skip navigation links
Oracle Fusion Middleware Java API Reference for Oracle Business Rules
12c Release 2 (12.2.1.4.0)

E95699-01

Copyright © 2009, 2019, Oracle and/or its affiliates. All rights reserved.