清单 1.Send email
public String exec(ITestExecutionServices tes, String[] args) {
ITestLogManager logMgr = tes.getTestLogManager();
String address = {address};
sendMail(address);
logMgr.reportMessage("serverDown---sendMail");
return null;
}
public static void sendMail(String address) {
Properties props = System.getProperties();
props.setProperty("mail.smtp.host", {mailHost});
Session s = Session.getInstance(props);
s.setDebug(true);
MimeMessage message = new MimeMessage(s);
try {
InternetAddress from = new InternetAddress({InternetAddress});
message.setFrom(from);
InternetAddress to = new InternetAddress(address);
message.setRecipient(Message.RecipientType.TO, to);
message.setSubject("System alert");
String content = "Hello Monitor,now server down! Please check it.
This is an auto-reply email. Please don't reply!";
message.setContent(content, "text/html;charset=GBK");
message.saveChanges();
Transport transport = s.getTransport("smtp");
transport.connect({mailHost},address);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
} catch (Exception e) {
e.printStackTrace();
}
}
回页首监控系统状态
RPT 每 10 分钟向系统发起一次测试,即可提供 7*24 小时的监控系统。新建一个 schedule
File --> New -->Performance Schedule:
图 13.创建监控 Schedule
点击 Finish,完成创建 schedules.
设置 Userload
由于 24*7 小时内,一共要监控 1008 次,所以在本例中,设置 Number of users 为 1100 个,每个 user 间隔 10 分钟,如下图所示:
图 14.设置 Userload
设置 user load 后的效果如下图所示:
Figure xxx. Requires a heading
监控系统
(1)在 Monitor Schedules 里 add test:
图 15.在 Schedules 里 add test
(2)add test 后的效果如下图所示:
图 16.监控 Schedule 创建完毕
点击图 16 中的绿色 run 按钮后,就可以对系统进行监控了。
监控效果展示
当系统出现问题后,相关人员会收到主题为System alert 的邮件,邮件的主题和内容都是在 custom code 里定义的。下面展示 4 种 monitor 的结果:
(1)当 server down 时,本例在邮件中的内容为通知相关工作人员:系统宕机。发送的监控邮件效果如下图所示:
图 17. Server down 时 RPT 发出的邮件
(2)当系统的不能处理用户提交的问题时,本例在邮件中的内容为通知相关工作人员:系统无法提交问题。发送的监控邮件效果如下图所示:
图 18. Cannot submit question 时 RPT 发出的邮件
(3)当系统处理用户提交的问题失败时,本例在邮件中的内容为通知相关工作人员:系统处理问题失败。发送的邮件效果如下图所示:
图 19. Question failed 时 RPT 发出的邮件
(4)当系统处理用户提交的问题,超过 5 分钟还未处理完成时,本例在邮件中的内容为通知相关工作人员:系统处理问题超过 5 分钟。发送的邮件效果如下图所示:
图 20. Question processing 时 RPT 发出的邮件
回页首总结
本文以典型的基于 J2EE 的 Web 项目为例,探索了如何使用 Rational Performance Tester(RPT)对系统进行 7*24 小时的监控。您可以根据本文介绍的方法,对基于 B/S 或者 C/S 架构的系统进行监控其是否处于正常状态,能否满足用户的需求。系统出现故障时,相关人员会收到 System alert 邮件,进而及时处理系统的异常。
原文转自:http://www.ibm.com/developerworks/cn/rational/1311_zhangqq_rpt/index.html