I second @Daniel Li's comments.
In every persistent table that I create, I have the following columns:
- id which is the first column and auto-incremented/identity/serial column
- CreatedBy which defaults to the user ("default system_user" in SQL Server) so I know who updated the column
- CreatedAt which defaults to the datetime of creation ("default getdate() in SQL Server).
(The exact syntax varies depending on the databse.)
With the exception of race conditions, I can find the last inserted row by doing "select * from table order by 1 desc".
Although these take extra space, I've found that they more than pay back by being able to resolve issues over time.