I have a solution where I use BAM to build a complete audit trail of a message flow. Custom components write a message to a predefined BAM view whenever you want it to. Normal points where you would use this functionality is in receive & send pipelines...