Task Data persistence and future auditing needs

Has anyone dealt with how to store task data for future auditing needs?
Our tasks will require the storage of all assignments and actions for future reporting needs. The default task data expiration setting has been extended, but how can this data be stored permanently for future use?

We also had this issue. For this, we used task APIs, and stored the available data in a database.