JavaScript 计算器会读取输入度量标准,并根据在用户创建的 JavaScript 文本文件中指定的计算产生输出度量标准。 根据计算器脚本中指定的输出度量标准,新计算的度量标准可以出现在“虚拟自定义代理”下的“调查器”树中,或出现在“调查器”树的任何节点中。 可以关闭计算的度量标准,但产生此度量标准的计算器不知道此关闭状态。
企业管理器 JavaScript 引擎允许将 JavaScript 计算器热部署到正运行的企业管理器。
JavaScript 计算器文件必须以 .js 扩展名结束,该文件位于企业管理器脚本目录中。 示例 JavaScript 计算器文件位于企业管理器安装的 examples/scripts/ 目录中。
JavaScript 计算器指定输入度量标准并生成一个或多个输出度量标准。
每个计算器都必须有 execute() 函数,此函数接受两个参数。 另外,可使用帮助函数帮助构建要发送回企业管理器的度量标准。 语法为:
function execute(metricData,javascriptResultSetHelper)
其中
execute() 函数由脚本引擎每隔 15 秒钟调用一次。
计算器脚本可以指定通过两种方法中的一种方法接收的输入度量标准:
注意:创建为函数 getAgentRegex() 和函数 getMetricRegex() 中字符串的正则表达式使用的字符转义,必须不同于 Introscope 中所用其他正则表达式使用的字符转义-例如,在度量标准组或在“搜索”视图中。 从这些 JavaScript 函数返回的任何 Java 转义字符还必须在 JavaScript 进行转义。 因此,例如 '\|' 在 JavaScript 中必须转义为 '\\|'。
所有 JavaScript 计算器函数均可以访问全局变量日志,该日志属于 IModuleFeedbackChannel 类型。 例如:
function execute(metricData,javascriptResultSetHelper) {
log.info("message");
log.error("message");
log.debug("message");
}
注意:如果要使用高级 JavaScript 功能或关心 ECMA 遵从性,请注意,脚本引擎中嵌入了 Mozilla Rhino JavaScript 库 1.6_R1 版本。
创建输出度量标准数据需要:
脚本计算中的典型计算值如下所示:
javascriptResultSetHelper.addMetric(metricName, heapUsedValue,Packages.com.wily.introscope.spec.metric.MetricTypes.kIntegerFluctuatingCounter,frequency)
注意:指定正则表达式时务必小心,因为它们可能匹配生成的任何度量标准。 例如,正则表达式“EJB.*Time.*”可以在 EJB 下插入新值。 (也就是说,使用正则表达式“EJB.*Time.*”时会在“EJB”下插入新值)。 您可以更改这种正则表达式,也可以从您拥有的度量标准中删除度量标准数据。
要安装新的 JavaScript 计算器,请将 JavaScript 文本文件复制到企业管理器安装的 <EM_Home>/scripts 目录。 您可以使用其他目录来安装脚本;如果这样,请使用 introscope.enterprisemanager.javascript.dir 属性指定目录。
脚本按照由 introscope.enterprisemanager.javascript.refresh 属性指定的频率从此脚本目录自动进行部署,默认情况下,频率为 60 秒。
成功部署后,新度量标准将出现在“度量标准浏览器”树中。
|
版权所有 © 2013 CA。
保留所有权利。
|
|