Is there anything that can show exactly what has awaken my phone? Recently I had some issues with my phones battery getting drained in 8-10 hours, even though the screen was active for less than 1 hour and wifi/bluetooth/gps was off.

My first thought was to check the battery usage statistics, but all I saw was the display, voice calls and cell standby, and after that a few apps that I commonly use (such as the browser).

Still suspecting an app hogging the CPU I used applications such as a task manager and watchdog to try to find the culprit, but no luck. I then looked around here and found a couple of answers referencing to the awake time. Looking at battery usage again I could see that indeed the awake time was around 75% of the total time since last charge, i.e. some app was preventing my phone from going to sleep. I uninstalled a couple of apps I don't use anymore and lowered settings for email checks etc, and now my awake time is down to normal levels.

My question is, is there any app/secret number/trick/whatever that can show exactly what has awaken my phone? In the battery usage statistics I can still see that sometimes the phone wakes up even though the screen is off, and that is normal, but if I ever get this problem again (and I'm sure I will), this would be a very valuable tool for trouble shooting.
I'm using Better Battery Stats.  It will shows what apps are causing wake locks and that sounds like what you're after.
http://forum.xda-developers.com/showthread.php?t=1179809