Windows CPU notification for misbehaving ColdFusion application Windows CPU notification for misbehaving ColdFusion application windows windows

Windows CPU notification for misbehaving ColdFusion application


I had a similar problem a few weeks ago and was directed to a program called AlwaysUp.

http://www.coretechnologies.com/products/AlwaysUp/

Monitors any process by any combination of:

  • Memory useage
  • Cpu Usage
  • Unresponsiveness
  • Run a custom script to determine if it should be reset

From here you can either restart the service, or send notification emails, or run a script to log things, etc.

They have a 30 day demo, I was sold on the 2nd day.. A good quick fix while you get to the bottom of the issue.


On Windows, you can use the performance and monitoring tools (perfmon) that come standard with Windows. When the CPU reaches a certain point, it can trigger an SNMP notice which can be picked up by most system monitoring tools and alert you that way. It can also run a command or do a variety of other useful things that might help you nail it down.


Another alternative is available to you if you are running Coldfusion 8 - the performance monitor. You can set up alerts to send you an email, call another CFC etc. for different criteria.

I use the server monitor a lot - it's a great tool even though I haven't used the alerts myself too much they are probably well worth looking into as they look easy to setup.

As for overall approaches...

In our company we use Windows Perfmon from one server to poll all our CF servers every 30 seconds to get some metrics such as total CPU and average response time. We log this to a CSV file. Every few minutes a scheduled task runs which reads the detail of these files and saves them to a DB table. It then truncates the files so they don't get too big.

Finally then, once a day, we get a report sent detailing all server metrics to our tech department that graphs the CPU and average response time for all our servers.

We find this is a great way to keep server performance in the developer conciousness and spot trends (such as poor CPU utilisation) early. We have found it very effective because you can't know if you are performing badly until you start to measure your metrics.