0

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!

sergeb
  • 103
  • 1
  • 6
  • A bit nit-picky perhaps but that's a VPS, not a dedicated server. – John Gardeniers May 04 '10 at 18:26
  • Yes, I'm considering VMware server itself as one of the potential sources, but since I have no control over it I would need to be able to prove that it is not the dedicated server's fault. – sergeb May 04 '10 at 21:27
  • To follow up on this - I finally figured the source of the trouble. It was the Performance Monitor that was causing the irregular 40min server downtimes ... How ironic is that? The way I found this, I logged right after one of the downtimes and found the process in question in the Process Explorer which I configured for the slowest update speed. Hope this helps someone. – sergeb Jun 07 '10 at 05:10

3 Answers3

2

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?

BlackICE
  • 170
  • 9
  • Thank you for the suggestion. Yes, I never log out of the RD session - it is always running on the server. This has been happening almost every day recently, the trouble is that most often between 2am and 5am, so if I can't login immediately after it comes back online. I will keep the Process Explorer running although if the process in question shuts down when it stops hogging the CPU I don't think I will see in even when I login as soon as it lets the CPU go... SO I was hoping if there was a tool that'd keep the all processes activity into a log file I could "replay"... Thanks again! – sergeb May 04 '10 at 21:39
  • well, I think there are a couple options then, if you can log on close to the time the problem ends, if you have system information up in process explorer hovering over the cpu usage graph tells you the process that was using the most CPU. – BlackICE May 05 '10 at 12:18
  • Another option would be to set up perf mon to monitor cpu usage of all processes on the machine. I think this would only work though if the process that ends up hogging the cpu was running when you started perf mon. – BlackICE May 05 '10 at 12:19
0

Have you the ability to open up the ports to allow perfmon to run remotely?

Chopper3
  • 101,299
  • 9
  • 108
  • 239
  • Not likely, opening ports is always a struggle with a hosting company... Besides, PerfMon would only give me the summary picture - I'd need to know exact process name - and that's what I'm trying to find out. Am I not correct? Thanks again! – sergeb May 04 '10 at 17:14
  • You're right about the ports (you could tunnel it over 80 perhaps?) but it will allow you to log all activity on an ongoing basis - i.e. it's not all about instantaneous data but can store historic data too. – Chopper3 May 04 '10 at 18:42
  • Pardon my ignorance, how do I I connect to PerfMon on a remote computer over Internet? – sergeb May 04 '10 at 21:33
0

maybe you could try adding a batch file with tasklist storing the output in a file to the scheduled jobs

Jure1873
  • 3,702
  • 1
  • 22
  • 28