IBM Integration Designer(下文简称 Integration Designer)提供了从 IBM Business Process Manager (BPM) 产品生成监视器模型的功能。本教程将展示如何生成这样一个监视器模型,然后将其部署到一个 IBM Business Monitor 服务器,该服务器在独立于 IBM BPM 宿主单元的一个单元中运行。流程模型开发人员需要在 Process Designer 中开启跟踪,以便跟踪需要在流程中监视的元素。
回页首
典型的 IBM BPM 和监视器拓扑结构包含在不同的 WebSphere® Application Server(下文简称 Application Server)单元中运行的 Business Monitor 服务器和 IBM BPM 服务器。要让 IBM BPM 将事件传送到 Business Monitor 服务器,需要对这两个单元进行跨单元配置。本教程 不会 介绍如何设置环境,您可以从知识中心 了解此拓扑结构的更多信息。
回页首
在本示例中,我们将展示如何在 Integration Designer 中为您的 ZBPM 流程打开一个项目,然后从中生成一个监视器模型。然后,我们将展示如何部署和配置该监视器模型,以便从远程单元中运行的 IBM BPM 流程接收事件。
执行以下步骤:
图 1. 打开 Process Center 透视图
图 2. 生成一个监视器模型
在本节中,您将生成一个监视器模型:
图 3. 监视器项目名称和监视器模型名称
图 4. 选择要监视的项
图 5. 监视器模型实现
图 6. 模型预览
图 7. 查看生成的监视器模型
生成监视器模型项目并对其内容感到满意后,您需要生成将要部署的 Business Monitor Java EE 项目。在 Business Monitor 透视图中,右键单击监视器模型文件 ( *.mm )。
在上下文菜单中,选择 Generate Monitor Java EE Projects 。这一步会生成将部署到 Business Monitor 服务器的项目(图 8)。
图 8. 生成 Monitor Java EE 项目
在 Integration Designer 中,创建针对 Business Monitor 的服务器配置,并将您的监视器模型项目部署到其中。
图 9. 打开服务器
图 10. 选择服务器类型
图 11. 输入服务器用户名和密码
图 12. 服务器属性
点击查看大图
关闭 [x]
回页首
部署监视器模型后,您需要修改它,要求它获取来自远程 IBM BPM 节点而不是本地 Business Monitor 节点的事件。
图 13. Admin Console 监视器模型
点击查看大图
关闭 [x]
图 14. 停止监视器模型
点击查看大图
关闭 [x]
停止监视器模型后,单击它的 Version 链接来打开它。这将打开监视器模型的所有特性。您需要调整一些属性,以便监视器模型接收来自远程 BPM 系统的事件(默认情况下,它需要接收来自本地系统的事件)。
图 15. 更改 CEI 分发模式
图 16. 更改 CEI 配置
图 17. 更改 CEI 设置
点击查看大图
关闭 [x]
按钮。图 18 显示了新设置。
图 18. 新的 CEI 设置
点击查看大图
关闭 [x]
如果所有功能运行正常,事件组列表范围将从本地 Business Monitor 节点更改为远程 IBM BPM 节点(图 19)。
图 19. 检查新设置
点击查看大图
关闭 [x]
图 20. 新配置已保存
点击查看大图
关闭 [x]
图 21. 更改 CEI 分发模式和目标值
点击查看大图
关闭 [x]
图 22. 更改 CEI 分发模式 - Target 现在为 inactive
点击查看大图
关闭 [x]
回页首
监视器模型现在已部署并做好测试准备。转到 BPM Process Designer 并运行一个新流程实例。然后,转到 Business Space 并检查是否能看到新流程实例。
您在创建监视器模型时选择的每个事件都有一个唯一 ID。在 Integration Designer 内,在 Business Monitor 透视图中打开您的监视器模型。
发出的第一个监视器事件是 “PROCESS_STARTED Event”。这个事件非常适合用于事件传送验证。选择 PROCESS_STARTED Event 并滚动到 Filter Condition 。在 Filter Condition 内,您将找到 Monitor Event ID,如以下代码和图 23 所示:
PROCESS_STARTED_Event/EventPointData/mon:model[1]/@mon:id = '85158f73-182a-4d12-b186-6fad85d801fd' and xs:string(PROCESS_STARTED_Event/EventPointData/mon:kind) = '{http://www.ibm.com/xmlns/bpmnx/20100524/BusinessMonitoring}PROCESS_STARTED' and fn:exists(PROCESS_STARTED_Event/EventPointData/mon:correlation/mon:ancestor/@mon:id)
图 23. 在 Integration Designer 中查找 Monitor Event ID
点击查看大图
关闭 [x]
现在您已知道 Monitor Event ID 是什么,您可看到在您启动 IBM BPM 流程时它是否已传送到 Business Monitor。
图 24. 事件记录器
点击查看大图
关闭 [x]
图 25. 事件 XML
点击查看大图
关闭 [x]
<mon:model mon:type="bpmn:process" mon:id="85158f73-182a-4d12-b186-6fad85d801fd" mon:version="2064.00156f44-c22f-4e5a-8c6f-259e52a940f9">
这与来自监视器模型的 Monitor Event ID 匹配。因此,您已确认监视器事件已成功从 IBM BPM 系统发出,并传送到 Business Monitor 系统。
在 Business Space 中打开一个 Instances 实例,确认您的监视器模型已收到图 26 中所示的内容。
图 26. Business Space
点击查看大图