I have a number of systems and services that send email alerts when some sort of event takes place. This works fine for a small number of systems but as the number of alerts grows the important message become less visible among the informational notices. Email filtering can only be effective to a point.
What sort of solution can I use in place of emails that will allow me to send arbitrary alerts from various services and that will scale easily as the number of services grows?
The kind of solution you are describing is called a SIEM (Security Incident and Event Manangement). Splunk.com is a popular SIEM.
I assume you've considered Nagios or Icinga?
What about using Amazon SNS? All your scripts would need to do is talk the SNS API (Amazon has examples in several languages, and notifications can be sent many different ways (email, SMS, HTTP, etc). It also makes it easy for people to un/subscribe from the various notifications.
Use pingdom to receive emails/smss. you can define for example that it will sample your services every minute and according to the result of 'test system' scripts that you write will allert you via email or sms according to severity.