超级指标函数和运算符
VMware Aria Operations
包括可以在超级指标公式中使用的函数和运算符。这些函数可能是循环函数,也可能是单一函数。 循环函数
循环函数可对多个值进行计算。
功能
| 描述
|
---|---|
avg
| 所收集值的平均值。
|
combine
| 将所含对象的所有衡量指标值组合到单一衡量指标时间轴中。
|
count
| 所收集值的数目。
|
max
| 所收集值的最大值。
|
min
| 所收集值的最小值。
|
sum
| 所收集值的总和。
|
vRealize Operations Manager
5.x 包括两个求和函数:sum (expr)
和 sumN (expr, depth)
。vRealize Operations Manager
6.x 包括一个求和函数:sum (expr)
。默认情况下,depth 设置为 depth=1。有关设置 depth 的更多信息,请参阅创建超级指标。 循环函数参数
循环函数返回对象或对象类型的属性或衡量指标值。属性是元数据,描述要从对象中收集的适配器的衡量指标。衡量指标是属性的实例。参数语法定义所需的结果。
例如,CPU 利用率是虚拟机对象的一个属性。如果虚拟机具有多个 CPU,每个 CPU 的 CPU 利用率都是一个衡量指标实例。如果虚拟机具有一个 CPU,则属性或衡量指标的函数返回相同的结果。
参数语法示例
| 描述
|
---|---|
funct (${this, metric =a|b:optional_instance|c })
| 返回已将超级指标分配到的对象的特定衡量指标的单一数据点。此超级指标不获取该对象的子项或父项中的值。
|
funct (${this, attribute=a|b:optional_instance|c })
| 返回已将超级指标分配到的对象的属性的一组数据点。此超级指标不获取该对象的子项或父项中的值。
|
funct (${adaptertype=adaptkind , objecttype=reskind , resourcename=resname , identifiers={id1=val1 id2=val2 ,…}, metric=a|b:instance|c })
| 返回参数中指定的 resname 的特定衡量指标的单一数据点。此超级指标不获取该对象的子项或父项中的值。
|
funct (${adaptertype=adaptkind , objecttype=reskind , resourcename=resname , identifiers={id1=val1, id2=val2,… }, attribute=a|b:optional_instance|c })
| 返回一组数据点。此函数迭代参数中指定的 resname 的属性。此超级指标不获取该对象的子项或父项中的值。
|
funct (${adaptertype=adaptkind , objecttype=reskind , depth=dep }, metric=a|b:optional_instance|c })
| 返回一组数据点。此函数迭代参数中指定的 reskind 的衡量指标。此超级指标获取子项(深度 > 0)或父项(深度 < 0)中的值,其中的深度 描述关系链中的对象位置。
例如,典型的关系链包括数据中心、集群、主机和虚拟机。数据中心位于顶部,而虚拟机位于底部。如果已为集群分配此超级指标,并且函数定义包括深度 = 2,则超级指标会获取虚拟机中的值。如果函数定义包括深度 = -1,则超级指标会从数据中心获取值。
|
funct (${adaptertype=adaptkind , objecttype=reskind , depth=dep }, attribute=a|b:optional_instance|c })
| 返回一组数据点。此函数迭代参数中指定的 reskind 的属性。此超级指标获取子项(深度 > 0)或父项(深度 < 0)对象中的值。
|
例如,
avg(${adaptertype=VMWARE, objecttype=VirtualMachine, attribute=cpu|usage_average, depth=1})
会通过 vCenter 适配器找到的类型为 VirtualMachine
的所有对象的 cpu|usage_average 属性计算所有衡量指标实例的平均值。VMware Aria Operations
可搜索您分配了超级指标的对象类型下一级的对象。 单一函数
单一函数仅对一个值或一对值进行计算。
功能
| 格式
| 描述
|
---|---|---|
abs
| abs(x)
| x 的绝对值。x 可以是任意浮点数。
|
acos
| acos(x)
| x 的反余弦。
|
asin
| asin(x)
| x 的反正弦。
|
atan
| atan(x)
| x 的反正切。
|
ceil
| ceil(x)
| 大于或等于 x 的最小整数。
|
cos
| cos(x)
| x 的余弦。
|
cosh
| cosh(x)
| x 的双曲余弦。
|
exp
| exp(x)
| e 的 x 次幂。
|
floor
| floor(x)
| 小于或等于 x 的最大整数。
|
log
| log(x)
| x 的自然对数(底为 x )。
|
log10
| log10(x)
| x 的常用对数(底为 10)。
|
pow
| pow(x,y)
| x 的 y 次幂。
|
rand
| rand()
| 生成大于或等于 0.0 且小于 1.0 的伪随机浮点数。
|
sin
| sin(x)
| x 的正弦。
|
sinh
| sinh(x)
| x 的双曲正弦。
|
sqrt
| sqrt(x)
| x 的平方根。
|
tan
| tan(x)
| x 的正切。
|
tanh
| tanh(x)
| x 的双曲正切。
|
运算符
运算符是要在函数之间包含或插入的数学符号和文本。
运算符
| 描述
|
---|---|
+
| 加
|
-
| 减
|
*
| 乘
|
/
| 除
|
%
| 取模
|
==
| 等于
|
! =
| 不等于
|
<
| 小于
|
<=
| 小于或等于
|
>
| 大于
|
>=
| 大于或等于
|
||
| 或
|
&&
| 与
|
!
| 非
|
? :
| 三元运算符。if/then/else
例如: conditional_expression ? expression_if_condition_is_true : expression_if_condition_is_false 有关三元运算符的更多信息,请参见 增强您的超级指标。
|
( )
| 括号
|
[ ]
| 在表达式数组中使用
|
[x, y, z]
| 一个包含 x、y、z 的数组。例如,min([x, y, z])
|
字符串运算符
| 描述
|
---|---|
equals
| 如果衡量指标/属性字符串值等于指定的字符串,则返回 true。
|
contains
| 如果衡量指标/属性字符串值包含指定的字符串,则返回 true。
|
startsWith
| 如果衡量指标/属性字符串值以指定的前缀开头,则返回 true。
|
endsWith
| 如果衡量指标/属性字符串值以指定的后缀结尾,则返回 true。
|
!equals
| 如果衡量指标/属性字符串值不等于指定的字符串,则返回 true。
|
!contains
| 如果衡量指标/属性字符串值不包含指定的字符串,则返回 true。
|
!startsWith
| 如果衡量指标/属性字符串值不是以指定的前缀开头,则返回 true。
|
!endsWith
| 如果衡量指标/属性字符串值不是以指定的后缀结尾,则返回 true。
|
字符串运算符仅在“where”条件中有效。例如:
${this, metric=summary|runtime|isIdle, where = "System Properties|resource_kind_type !contains GENERAL"}