I’d like to do user-operation logging to file (for auditing purposes), and have some questions.
First, the user-operation logging is only enabled for HISTORY_LEVEL_FULL - is there any technical reason for this? At least I am able to make a few test-cases pass with AUDIT level by introducting another property in process engine configuration.
Second, for capturing the user-operations, would we have to implement a plugin-mechanism corresponding to the one for custom history backend, or is there some other, existing way?
There is not technical reason for writing UserOperationLogs on only FULL. In fact, you can provide a custom implementation of the HistoryLevel interface and decide yourself which history events you want to produce. See https://github.com/camunda/camunda-bpm-examples/tree/master/process-engine-plugin/custom-history-level for an example.
Regarding your second question: The user operation log is not built for making custom extensions to what is logged. That means, there is no proper plugin point to do so. If you want to do that anway, you could have a look at the UserOperationLogManager class. Of course this code can change in any way with future releases.