This has been implemented by Dale DuPreez in DevKey DDP109 :
"Add some automated alerting
capabilities to Ensemble"
It is available for testing in the current field test of Ensemble
2011.2.
Here is the description from that key:
Ensemble has expanded alerting support in the Ens.MonitorService component which is automatically started for each production.
In all cases, Ensemble will now send an alert when a job configured for a specific configuration item is marked as dead. This alert is prefixed with the non-localized text "DeadJobAlert: " for simplified routing and handling, and should assist users in addressing the serious problems indicated by a process dying.
The behaviour of the InactivityTimeout setting has been changed to send an alert in addition to marking a component as "Inactive" when no activity has occurred with a configuration item's configured InactivityTimeout. In addition, the setting is now included as a Setting in the Settings property of the Ens.Config.Item class to permit the use of Default Settings to populate this value. The original InactivityTimeout property of the Ens.Config.Item class and the XML attribute of the same name will be transparently transferred to the new location, so previous code directly accessing this value should see no change in behaviour, but the structure of the XML produced in the production XData will be slightly different.
There are also two new options for triggering automated alerts based on queues for Business Processes and Business Operations. These new settings can be configured on a per host basis or by using Default Settings. The options are as follows:
QueueCountAlert - controls the number of messages on a configuration item's queue which will trigger an alert
QueueWaitAlert - controls the amount of time a message may be on a configuration item's queue which will trigger an alert
The QueueCountAlert is intended to capture situations where large queues are building up, and the QueueWaitAlert is intended to capture situations where a queue is not processing messages. For each of the alert types, the alert text is prefixed by the non-localised name of the alert, a colon and a space: "QueueCountAlert: " and "QueueWaitAlert: ". This should simplify handling of these alerts.
For all three of the above alerts, using a value of 0 for the setting will avoid triggering any alerts for that event.
By default, the Ensemble monitor service which checks these options runs every five seconds, so the granularity of the checking is somewhat limited, but should still provide timely warnings about processing and flow problems.
Ted
If a site is using a service to monitor the Event Log, care should be taken to ensure that the Source property of the alert is interrogated rather than the Source property of the related Event Log entry, as the Event Log records the code which triggered the alert rather than the logical "source" of the alert, which would be the configuration item running into issues.