Class | Description |
---|---|
ActivationData |
Java class for activation-data complex type.
|
ActivationTrace |
Java class for activation-trace complex type.
|
ArrayValue |
Java class for array-value complex type.
|
BeanObject |
Java class for bean-object complex type.
|
BeanProperty |
Java class for bean-property complex type.
|
CollectionValue |
Java class for collection-value complex type.
|
DecisionTrace |
Java class for anonymous complex type.
|
FactTrace |
Java class for fact-trace complex type.
|
ObjectFactory |
This object contains factory methods for each
Java content interface and Java element interface
generated in the oracle.rules.rl.trace package.
|
PropertyValue |
The value of a bean-property.
|
ResetTrace |
Java class for reset-trace complex type.
|
RuleCompilationTrace |
Java class for rule-compilation-trace complex type.
|
RulesetStackTrace |
Java class for ruleset-stack-trace complex type.
|
RuleTrace |
Java class for rule-trace complex type.
|
TraceEntry |
Java class for trace-entry complex type.
|
Enum | Description |
---|---|
ActivationOperation |
Java class for activation-operation.
|
FactOperation |
Java class for fact-operation.
|
RulesetStackOperation |
Java class for ruleset-stack-operation.
|
The following RL functions provide control over decision tracing in the rule engine and provide access to the decision trace.
setDecisionTraceLevel(int level)
-
Sets the decision trace level to the specified level.
getDecisionTraceLevel() returns int
-
Gets the current decision trace level.
setDecisionTraceLimit(int count)
-
Sets the limit on the number of events in a trace.
The default is 10000.
getDecisionTraceLimit() returns int
-
Gets the current limit on the number of events in a trace.
getDecisionTrace() returns DecisionTrace
-
Gets the current trace and starts a new trace.
The decision trace level may be one of the following:
RuleSession.DECISION_TRACE_OFF
.
RuleSession.DECISION_TRACE_PRODUCTION
.
RuleSession.DECISION_TRACE_DEVELOPMENT
.
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