Very rarely, our server runs low on RAM (and crashes) due to a certain rogue app that gobbles up all of the RAM. To guard against this happening again, is there any way to configure the built in Performance Monitor to send us a warning email if RAM crosses the 80% use threshold?
Not Performance Monitor directly, but one of its associated tools: A Data Collection Set of type "alert".
These allow you to define an alert based on performance counter values going above or below a threshold. When the threshold is crossed a task can be executed (in this case task is running an application). That application could send an email (eg. use
Send-MailMessage
cmdlet in PowerShell).I'm pretty sure perfmon can't do this but you could write a 'scheduled task' to check and email on alert.
That said I'm not sure this is the best way of dealing with this problem - the reason is that you may be SO out of memory that you can't run the task or email out, I'd strongly suggest you use another machine to look at this machine, check it's memory (and maybe a few other stats) and alert from there. This way you'll be able to alert on these errors or even if the machine falls over.
If you don't have the infrastructure to have this 'alerting machine' on a dedicated machine you could consider having two machines cross-checking each other. Hope this helps.