I think I found a way to optimise this so we can use advice for recording the time taken for each processor. We do this already on route level only. But the processors are currently wrapped which takes up extra footprint. By using advice we can optimise this. There is already a TODO about this, however the logic to setup the MBean and their counters was a bit complex.