We are currently hosting two terminal servers for our users to connect to via Citrix Metaframe. One of the applications we host there is an inhouse application that was programmed a long time ago, specific to the warehouse operations of our company. Sometimes the users will run queries in this application that crashes the app, leaving it to consume 95-100% CPU. The user might then open a second entity of the app, only to crash that one aswell later that day.
I am monitoring the servers CPU usage via SNMP polling. So everytime an alarm tells me the server is under heavy load, I am manually logging on as admin to kill the crashed process. This happens roughly 2 times every day. The terminal server becomes crippled until the proccess is killed (even takes 2-3 minutes to log on), affecting all other users badly.
Is there any tool or procedure I can implement to help me with this? I need it to check for high CPU usage in specific processes. If high CPU is found for the application and is observed for X amount of time, KILL IT! (can't have it killing the app if CPU usage temporarily spikes).
Have tried several "Auto kill" tools, but have found none that can target specific .exe files for CPU over time.