第三十一章 开发Productions - ObjectScri
第三十一章 开发Productions - ObjectScript Productions - 定义警报处理器
系统警报和用户生成的警报提供了一种将Productions
的问题通知用户的方法。警报处理器是一个业务主机,它通过电子邮件、文本寻呼机或其他机制通知适用的用户有关必须更正的问题。在许多情况下,可以定义警报处理器而无需创建自定义代码。有关将警报处理器添加到生产中的信息,请参阅监视警报。本页介绍如何使用自定义代码创建警报处理器。
背景资料
业务主机可以发送警 IRIS®
还会根据生产中的设置值在特定情况下自动发送警报。如果产品包含名为 Ens.Alert
的业务主机, IRIS
会自动向该业务主机发送专门的请求消息(Ens.AlertRequest
)。该业务主机是生产的警报处理器;任何作品都只能包含其中一个。
然后警报处理器可以使用此消息中的信息来确定必须联系谁。有几种一般情况:
- 如果可以通过相同的输出机制处理所有警报,则警报处理器可以是使用适用适配器的业务操作。请参阅使用简单的电子邮件警报处理器和使用简单的出站适配器警报处理器。
- 如果需要路由警报,但不需要跟踪警报解决方案,请参阅使用路由警报处理器。
- 如果要跟踪警报解决过程,请参阅使用警报管理来跟踪警报解决。
在所有情况下, IRIS
还会将信息写入 IRIS
事件日志,类型为警报。
注意:Ens.Alert
是作为告警处理器的业务主机的必填名称。不要将它与类名混淆。警报处理器可以使用任何类名。
使用简单的电子邮件警报处理器
如果适合通过电子邮件发送所有警报,请在 Ens.Alert
组件的中使用 EnsLib.EMail.AlertOperation
类。这种专门的业务操作执行以下操作:
-
ADAPTER
参数指定为EnsLib.EMail.OutboundAdapter
。
此适配器提供用于指定电子邮件收件人的设置,以及使用 SMTP
电子邮件服务器所需的信息。
它还提供了通过配置的服务器发送电子邮件的辅助方法。
- 实现了
OnMessage()
方法。此方法需要Ens.AlertRequest
作为输入。
此方法执行以下操作:
- 从
Ens.AlertRequest
中读取警报文本。 - 创建电子邮件消息(
%Net.MailMessage
实例)并将警报文本写入其中。 - 将电子邮件发送给所有已配置的收件人。
可以不加修改地使用此类。或者可以创建并使用它的子类。
使用简单的出站适配器警报处理器
如果可以通过相同的输出机制处理所有警报,但不能在中使用 EnsLib.EMail.AlertOperation
,则创建一个名为 Ens.Alert
的业务操作,如下所示:
- 将
ADAPTER
参数指定为合适的适配器类的名称。 - 实施
OnMessage()
方法。此方法的签名应如下所示:
Method OnMessage(pRequest As Ens.AlertRequest, Output pResponse As Ens.Response) As %Status
在实现中,根据需要调用适配器的方法。
请参阅定义业务操作和适配器书籍。
可能想要定义类,以便可以配置电子邮件地址和电话号码等详细信息。请参阅添加和删除设置。