While logging onto a SQL Server 2008 instance I went to look for something in the default trace and found that it wasn't running. The disk had filled previously, which stops the default trace, and it hadn't been restarted afterwards.
If you've encountered the same thing you can set this up as a daily agent job or policy check.
If Not Exists (Select Top 1 0 From sys.traces Where is_default = 1)
Begin
Print 'Restarting default trace'
Exec sp_configure 'show advanced options', 1
Reconfigure
Exec sp_configure 'default trace', 0
Reconfigure
Exec sp_configure 'default trace', 1
Reconfigure
End