Java运行时监控,第3部分: 监控应用程序生态系统的性能与可用性(1) - 编程入门网
or 的一个实例来实现,它既可以提供一个有计划的回调机制,又可以提供一个线程池。这个调度器将以 CollectionScheduler 这个名称部署于 Spring。
SSH shell 实现对服务器调用命令并返回结果。这个可以通过 org.runtimemonitoring.spring.collectors.shell.ssh.JSchRemoteShell 的一个实例来实现。这个类是一个名为 org.runtimemonitoring.spring.collectors.shell.IRemoteShell 的 Shell 接口的实现,它将以 UbuntuDesktopRemoteShell 这个名称部署于 Spring。 该收集器不会硬编码一组命令及其相关解析例程,而是使用 org.runtimemonitoring.spring.collectors.shell.commands.CommandSet 的一个实例,它将以 UbuntuDesktopCommandSet 这个名称部署于 Spring 中。命令集从一个 XML 文档载入,该文档表述了: Java运行时监控,第3部分: 监控应用程序生态系统的性能与可用性(1)(4)时间:2011-02-13 IBM Nicholas Whitehead将要用来执行 shell 的目标平台 将要执行的命令 将如何解析返回数据并将其映射到 APM 跟踪命名空间 稍候我将提供有关这些定义的更多细节。图 2 大致解释了收集器、shell 和命令集三者之间的关系: 图 2. 收集器、shell 和命令集 下面我将专门介绍一些关于专用于生成性能数据的命令以及它们的配置方法的简短示例。一个经典的例子就是 sar 命令。Linux 手册(参见 参考资料)对 sar 的定义是收集、报告或者保存系统活动信息。该命令非常灵活,它有超过 20 个参数,这些参数可以结合起来使用。一个简单的选择就是调用 sar -u 1 3,它报告了在三个时间间隔内(一个时间间隔为一秒)度量的 CPU 使用。清单 2 展示了它的输出: 清单 2. sar 命令的输出
该输出可以划分成开头、标题、三个时间间隔的数据读数和一个读数汇总平均值。这里的目标是要执行该 shell 命令、捕获输出,然后解析输出并跟踪到 APM 系统。输出数据的格式是够简单的,但却可能根据具体的版本而不同(轻微或显著的不同),而且其他 sar 选项也会返回完全不同的数据(更不用说其他的命令了,它们当然会返回不同的数据格式)。例如,清单 3 展示了一个显示活动的 socket 行为的 sar 执行: 清单 3. 显示 socket 行为的 sar
因此,现在所需要的是一个解决方案:怎样在不重新编码收集器的情况下快速配置不同的数据。还可以将诸如 totsck 这样的含糊词语翻译成像 Total Used Sockets 这样的更易读的短语,以免收集到的记录会干扰 APM 系统。 在某些情况下,您可以选择以 XML 格式获取这个数据。例如,SysStat 包(参见 参考资料)中的 sadf 命令会以 XML 格式生成很多被经常收集的 Linux 监控数据。XML 格式增加了数据的可预测性和结构,并真正排除了分析数据、将数据映射到跟踪名称空间 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |