-
Bug
-
Resolution: Done
-
Major
-
6.0.0
-
None
Description of problem:
When using a threaded audit logger, it saves the events regularly with the given delay. The audit view will only show the first sequence of events however, due to how the XML is generated.
KieRuntimeLogger log = KieServices.Factory.get().getLoggers().newThreadedFileLogger(ksession, "test", 1000);
...
log.close()
This now generates something like:
<object-stream>
<org.drools.core.audit.WorkingMemoryLog>
<version>6.1</version>
<events>
<org.drools.core.audit.event.RuleFlowVariableLogEvent>
<type>32</type>
<processId>com.sample.evaluation</processId>
<processName>Evaluation</processName>
<processInstanceId>1</processInstanceId>
<variableId>reason</variableId>
<variableInstanceId>reason</variableInstanceId>
<objectToString>Yearly performance evaluation</objectToString>
</org.drools.core.audit.event.RuleFlowVariableLogEvent>
...
</events>
<engine>PHREAK</engine>
</org.drools.core.audit.WorkingMemoryLog>
<org.drools.core.audit.WorkingMemoryLog>
<version>6.1</version>
<events>
...
</events>
<engine>PHREAK</engine>
</org.drools.core.audit.WorkingMemoryLog>
...
The audit log will only consume the first sequence of events however, additional sequences in the XML are ignored (due to a change in the audit log XML where it used to save all events as one sequence instead I believe)