Send the parameters of what you're trying to save up to the server using "perform script on server". That way the server can write the log entries without the client needing to do it. If you only trigger the write based on specific actions as you've outlined above, then you can certainly create an easy-on-the-eyes running log of database activity.
Take a look at the existing audit logging solutions out there.
It's actually quite easy to do something for logging. It's a bit harder to have "rollback" transactions, but it doesn't sound like you need them.