I am trying to decide on the best method for audit logging within my application. The main reason for the log is reporting the sequence of events (changes).
You could look into an AOP framework to help with this. It would allow you to inject logging functionality at the beginning or end of any/all methods. If you go down this road, it might help define what would make sense for storing the log data.