vb is also only showing the last hour of searches for me. This was on a fresh 3.0.3 install on my test board. So I did some investigating. I figured I would start at the scheduled tasks, so I took a look at the "Hourly Cleanup" entries. In the file ./includes/cron/cleanup.php I found:
PHP Code:
//searches expire after one hour
$DB_site->query("
### Remove stale searches ###
DELETE FROM " . TABLE_PREFIX . "search
WHERE dateline < " . (TIMENOW - 3600)
);
I have not tested this yet, but I don't know why it wouldn't work. You could change the 3600 to whatever you want to get the desired result. 86400 for 1 day, 604800 or 1 week, etc.
If I have problems I will report back.