You can use a JPAWorkingMemoryDbLogger to save information in audit tables while executing, and then use JPAProcessInstanceDbLog which receives the environment, to use findVariableInstances(processInstanceId), that will give you all the variables of this processInstance.
Demian