快速业务通道

Java运行时监控,第3部分: 监控应用程序生态系统的性能与可用性(1) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
quot;) || it.trim().length() < 1)) { buff.append(it).append(''\n''); } } return buff.toString() .replaceFirst("State", "Status") .replaceFirst("Service Name", "ServiceName") .replace("State", "Transitions"); ]]></value> </property> </bean>

图 4 展示了 CSS 监控的 APM 指标树

图 4. CSS 监控的 APM 树

Java运行时监控,第3部分: 监控应用程序生态系统的性能与可用性(1) - 编程入门网

SSH 连接

最后一个要考虑的有关 Linux/UNIX shell 收集的问题就是 SSH 连接的问题了。所有 Shell 类的基本接口为 org.runtimemonitoring.spring.collectors.shell.IShell。它定义了一个名为 issueOSCommand() 的方法的两种变体,命令在这个方法中被作为参数传递并且返回结果。在我的使用远程 SSH 类 org.runtimemonitoring.spring.collectors.shell.ssh.JSchRemoteShell 的例子中,底层 shell 调用建立在 Apache Ant 中 SSHEXEC 任务的实现的基础上(参见 参考资料)。这种方法的优点在于它很简单,但是它有一个不可避免的缺点:要为每一个发出的命令创建一个新的连接。这显然会降低效率。一个远程的 shell 只可以每分钟轮询一次,但每一个轮询周期可以执行几个命令来获取监控数据的适当范围。问题是要在监控时窗期间(跨多个轮询周期)保持开放会话是很难的。它需要更详细地检查和解析返回数据,提供不同的 shell 类型以及不断显示 shell 提示,当然 shell 提示不包括在预期返回值中。

目前为止,我一直努力处理长期存活的会话 shell 实现。另外一个选择就是折衷:即为每一个轮询周期模式保留一个连接,但同时试着用一个命令捕获所有数据。这个可以通过追加命令或者(在某些情况下)通过对一个命令使用多个选项来实现。例如,我的 SuSE Linux 服务器上的 sar 版本拥有一个 -A 选项,该选项返回一个包含 sar 支持的所有指标的示例;该命令与 sar -bBcdqrRuvwWy -I SUM -n FULL -P ALL 等效。返回的数据将拥有多个段落,但是用一个命令集来解析它应该没有问题。要查看这样的例子,请参见本文中名为 Suse9LinuxEnterpriseServer.xml 的示例代码中的命令集定义(参见 下载)。

Java运行时监控,第3部分: 监控应用程序生态系统的性能与可用性(1)(9)

时间:2011-02-13 IBM Nicholas Whitehead

监控时窗

Microsoft Windows 与 Linux/UNIX 之间的本质差别必然导致性能数据收集也迥然各异。Windows 本身几乎没有可以提供丰富的性能报告数据的命令行工具。性能数据也无法通过像相对简单的 /proc 文件系统这样的东西来获取。Windows Performance Manager(WPM)— 也称为 SysMon、System Monitor 或者 Performance Monitor — 是从 Windows 主机获取性能度量的标准接口。它的功能很强大而且拥有大量有用的指标。此外,很多基于 Windows 的软件包都通过 WPM 发布了它们自己的指标。Windows 还通过 WPM 提供了制图、报告和警报设施. 图 5 展示了一个 WPM 实例的屏幕截图:

图 5. Windows Performance Manager

Java运行时监控,第3部分: 监控应用程序生态系统的性能与可用性(1) - 编程入门网

WPM 管理一组性能计数器,即引用了某一具体指标的复合命名的对象。组成复合名称的有:

性能对象:性能指标的广义范畴,如:处理器 或内存。

实例:当有多个可能成员时,某些性能对象要用一个实例来划分。例如,处理器既有代表单个 CPU 的实例,又有总实例。相反,内存则是一个 “纯” 性能对象,这是因为内存只有一个表现形式。

计数器:实例(如果可用的话)以及性能对象内部的指标的粒度名。例如,处理器实例 0 有一个名为 % Idle Time 的计数器。

根据这些名称片段,表达这些对象的命名约定和语法

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号