I'm trying to compile a list of all the activity for an entire site collection for a span time of, say the last 60 minutes or last 24 hours. Activity being anything that has been modified/created/rated, etc. and what user did it. One way is to brute force traverse down all of the webs, then lists, then items and find what has changed or has been created. For example:
foreach(SPWeb web in site.AllWebs)
{
foreach(SPList list in web.Lists)
{
foreach(SPListItem item in list.GetItems())
{
// log what has been created/modified
}
}
}
But there must be a better, more efficient approach. Is there somewhere that logs all activity for the last 24 hours? Is there something in the database I can hit (read only of course) that would show all of this activity.