上一主题: MGT 实施详细信息下一主题: 显示板消息参考指南


监控 API 参考指南

CA AppLogic®

3.7

 

CA Technologies

监控 API 概述

通过将 HTTP GET 请求发送到 MON 组件的 aux 输入终端,您可以为连接到 MON 组件的各组件收集计数器数据和配置。 通过自定义的基于 REST 的协议(通过 HTTP 运行)完成收集。 此协议定义三种资源类型:

每一个类型都嵌入到上一个类型的范围中。 也就是说,实体仅在组件范围中才有意义,而计数器仅在特定实体范围中才有意义。 数据收集 API 允许检索对 MON 已知的所有计数器配置和值。

MON 以下列任一结构化文本格式导出请求的数据配置与值:

监控 API 协议

该协议仅使用 GET HTTP 方法,因为它仅提供读取功能。 因此,每个支持的协议请求类型都可通过 URI 和输出结构来定义。 URI 中被视作特殊的字符应使用标准 % 编码进行转义。 我们按其 XML 模式定义输出(主要输出格式为 XML)。 通过直接使用各自输出格式表示的结构和属性(例如 UDL 实体与 XML 实体、UDL 属性与 XML 属性、JSON 对象与 XML 实体、JSON 对象属性与 XML 属性)方法,可转换为其他输出格式(UDL、JSON)。

所有输出的根节点都包含时间戳属性,提供创建响应时的服务器时间。

以下为所有所有支持 URL(调用)的说明。

计数器配置调用

/monapi/desc[?fmt=<format>] 

以指定的输出格式返回所有可用组件的列表(<format> 为已知输出格式之一,例如 xml)。

输出:

<response timestamp="1194967464">
   <appliance name="main.web" />
   <appliance name="main.in" />
</response>

/monapi/desc/<apps>[?fmt=<format>] 

返回已请求组件 (<apps>) 中所有可用实体的列表。 <apps> 可能是单个组件名称、以逗号分隔的组件名称列表或者表示所有可用组件的通配符 (*)。

输出:

<response timestamp="1194967464">
   <appliance name="main.web">
      <entity name="Terminal in" />
      <entity name="Terminal out" />
      <entity name="Volume data" />
      <entity name="CPU" />
      <entity name="Memory" />
      <entity name="Network" />
   </appliance>
</response>
/monapi/desc/<apps>/<ents>[?fmt=<format>] 

返回已请求组件实体 (<ents>) 中所有可用计数器的列表。 <ents> 可能是单个实体名称、以逗号分隔的实体名称列表或者表示所有变量实体的通配符 (*)。 与 <apps> 相同。

输出:

<response timestamp="1194967464">
   <appliance name="main.web">
      <entity name="Terminal in">
         <counter name="Sent bytes" />
         <counter name="Received bytes" />
      </entity>
   </appliance>
</response>
/monapi/desc/<apps>/<ents>/<cnts>[?fmt=<format>] 

返回已请求计数器 (<cnts>) 的说明。 <ents>、<ents> 和 <ents> 可能是单个组件/实体/计数器、以逗号分隔的组件/实体/计数器列表或者通配符。

输出:

<response timestamp="1194967464">
   <appliance name="main.web">
      <entity name="Terminal in">
         <counter name="Sent bytes" description=""  units=""  alarm_below="" alarm_above="" range_lower="" range_upper="" pace="" />
         <counter name="Received bytes" description=""  units=""  alarm_below="" alarm_above="" range_lower="" range_upper="" pace="" />
      </entity>
   </appliance>
</response>

计数器值调用

/monapi/val/<apps>/<ents>/<cnts>[?fmt=<format>] 

返回指定计数器的值。 如果省略任何 app、ent 或 cnt 参数,则假定使用通配符值。 因此,例如,/monapi/val/main.web 将意味着“组件 main.web 所有实体的所有计数器的值”。

输出:

<response timestamp="1194967464">
   <appliance name="main.web">
      <entity name="Terminal in">
         <counter name="Sent bytes" value="23234" />
         <counter name="Received bytes" value="690432" />
      </entity>
   </appliance>
</response>