added transaction logging