是否有一种简单的方法可以获取以字母 XYZ 开头的所有流程的指标?我有大约 80 个必须单独监控的进程,它们都以前缀 XYZ 开头。
我使用 sigar shell 创建了一个查询:ps State.Name.sw=XYZ,它将为我提供我想要的进程列表。我需要做的是通过所述查询定义此流程列表,并从流程服务收集和跟踪统计信息:http: //support.hyperic.com/display/hypcomm/Process+service
我需要的是由我的查询定义的每个 XYZ 进程的 3 或 4 个关键统计信息,以在 Web 前端显示为图形。
注意:Hyperic HQ 服务器安装在 Windows 机器上,我正在通过代理监控 Linux 机器。
谢谢,
克里斯
编辑:这是我对一个插件的尝试,它可能会给我想要的东西,但它没有被 Hyperic Web UI 盘点/检测到。简单地将我指向 Hyperic 的教程之一是行不通的。谢谢。
<!DOCTYPE plugin [
<!ENTITY process-metrics SYSTEM "/pdk/plugins/process-metrics.xml">]>
<plugin>
<server name="ABCStats">
<config>
<option name="process.query"
description="Process Query"
default="State.Name.sw=XYZ"/>
</config>
<metric name="Availability"
alias="Availability"
template="sigar:Type=ProcState,Arg=%process.query%:State"
category="AVAILABILITY"
indicator="true"
units="percentage"
collectionType="dynamic"/>
&process-metrics;
<plugin type="autoinventory"/>
<plugin type="measurement"
class="org.hyperic.hq.product.MeasurementPlugin"/>
</server>
</plugin>
当涉及到任何一种趋势数据时,我目前最喜欢的方法是使用 munin 及其插件架构。Munin 插件编写起来非常简单,因此很容易对各种数据进行趋势分析。如果您已经有一个抓取每个进程的脚本,您应该能够为每个进程生成数据,并让 munin 将其粘贴在 rrd db 中以在其上生成图表。
看到所有用于流程监控的自定义代理/协议很有趣。部分原因是 net-snmp 完全无法用于监控每个进程的数据,以及希望依赖 SNMP 的普通客户端。
我通常使用自定义脚本解决这个问题,这些脚本使用一组自定义选项运行 ps,解析结果输出,并根据需要进行处理。这会导致在大型企业中管理此解决方案的许多变体时出现可伸缩性问题。
您可能想尝试一下脚本插件:Hyperic HQ Script Plugin及其教程。