Hmm… I remember when I installed a CommVault Galaxy backup server back in the day, that it had some sql 2000 enterprise or something installed along with it, and part of the install process was to configure something in SQL to stop it gradually eating all the available memory, as the SQL bit was obviously not the servers primary role. So there would seem to be a way to limit SQL’s memory usage, perhaps you could look into that, or as previously mentioned, add more memory (though there’s no way of telling whether SQL would just go and use up all the extra memory as well I guess!)
I don’t monitor memory usage on any wintel personally, though IMHO it’s a valid check if there is a reason for it. So, like if you want to make some changes as Loose recommends, so you know whether your memory usage has been at an abnormal level of say > 98% for an abnormal amount of time say > 30 mins (or 60, or whatever figure is abnormal for your situation), when it goes off you know you might want to be jumping on the box and be finding out if you’ve got a stuck process, or perhaps this might indicate half your memory is suddenly kaput and you’ve only got half the resource you should have, and so on. Perhaps, surpress your warning notifications as well, that way you only get notified when its critical hard down, i.e. deffo having some long term issues, and you won’t be bothered by it fluctuating in and out of the warning threshold under normal operation.
But yeah, I can see that on an SQL server that one moment is running some easy query then in the next might be running some stupidly large query, memory usage will be up and down like a yo-yo, so you’ll have to balance out the annoyance factor of over-alerting against the fine-tuning of the thresholds, and then against the perceived importance of monitoring the memory service in the first place, and figure out if it’s “worth it” from both an administrative perspective and a business perspective. What I can say for sure though is that ‘over-alerting’ is the worst thing to my mind, and only leads to situations like when something IS seriously wrong it can and usually does just get ignored because, “Well, we didn’t really look into it because the server ALWAYS alerts like that…”