One of the very important needs in rules execution is collecting all sorts of information during the execution process. For example, what rules have fired, or what conditions were or were not met. This information helps you to understand how a particular decision is made based on the defined business rules.
There are many different ways to collect this information. When a set of logic documents (models) is modeled and rules are defined, before executing them you can tell the system what Events you are interested in.
You can selectively set the event in which you are interested, or simply express your interest in all of them by simply setting one boolean property.
When execution is finished, you can collect all of the events from the result:
Or, if you only want to generate a log information from these events, you can simply collect a ready-to-use one from the ConclusionLog property of the execution result.
Events allow you to understand “why” a decision is taken when it is taken. And you can simply store this information along with the result into your system for future use. Business rules execution should not be like running a black box, you need to have full visibility during the modeling as well as at execution time.
For more information please visit our wiki at http://wiki.flexrule.com/index.php?title=Events