From what I know, there is no way to make MySQL generate an insert statement from an existing row. The only way that I know about would be invoking mysqldump.
If you want an audit log, I suggest you better take a look at the binary logs from MySQL, combining automatic backups+binary log you can easily re-assemble the structure of a table/database. Plus, the binary log has everything you want: it logs dates and times, the exact executed queries and you can easily take snapshots from that.