How to monitor process hogging CPU on a remote server

cpu-usagewindows-server-2008

I have a remotely hosted (virtual, VMware) dedicated server (Windows 2008 Server Web edition w/ SP1) that I can only connect to over Remote Desktop. Lately, a process hogs CPU for ~40 minutes most every day (at a random hour) and brings all web sites on the server down. While this is going on I also cannot connect using Remote Desktop to investigate on what is that process… Promptly after 40 min I can RD and the first thing I see on the Perf Monitor is that there was something topping the CPU at 100% and stops just before I'm able to RD… I'm aware of the beginning and end of this for I have monitors setup that email me up/down status of the web sites but I'm locked out while this is happening – can't RD to the server until it's over (and too late to see the Task Manager/Process Explorer picture).

What is the best way/tool to setup on the server to continuously monitor all processes so when this happens I login and "replay" it to find the process causing this trouble?

(I have no control over the virtual/VMware setup for it is hosted by a 3rd-party but I have most full control over my dedicated machine)

Thanks in advance!

Best Answer

If this is happening every day, could you not start up proc explorer and leave it running and disconnect from the RD session instead of logging out, that way once you are able to get logged back in you can see the immediate history?