VMware Aria Operations には、スーパー メトリック数式で使用できる関数と演算子が用意されています。関数はループ関数またはシングル関数のいずれかです。
ループ関数
関数 | 説明 |
---|---|
avg | 収集された値の平均値。 |
combine | 含まれるオブジェクトのすべてのメトリック値を結合して単一のメトリック タイムラインにします。 |
count | 収集された値の数 |
max | 収集された値の最大値。 |
分 | 収集された値の最小値。 |
sum | 収集された値の合計値 |
ループ関数の引数
ループ関数は、オブジェクトまたはオブジェクト タイプの属性またはメトリック値を返します。属性は、オブジェクトから収集するアダプタのメトリックを記述するメタデータです。メトリックは属性のインスタンスです。引数構文は任意の結果を定義します。
たとえば、CPU 使用率は仮想マシン オブジェクトの属性です。仮想マシンが複数の CPU を備える場合、各 CPU の CPU 使用率がメトリック インスタンスになります。仮想マシンが 1 つの 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=val1id2=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 のメトリックを繰り返し使用します。このスーパー メトリックは、子(depth > 0)または親(depth < 0)のオブジェクトから値を取ります。ここで、depth は関係チェーンにおけるオブジェクトの場所を記述します。 たとえば、標準的な関係チェーンにはデータセンター、クラスタ、ホスト、仮想マシンが含まれます。データセンターが最上位で、仮想マシンが最下位です。スーパー メトリックがクラスタに割り当てられ、関数の定義に depth = 2 が含まれる場合、スーパー メトリックは仮想マシンから値を取ります。関数の定義に depth = -1 が含まれる場合、スーパー メトリックはデータセンターから値を取得します。 |
funct(${adaptertype=adaptkind, objecttype=reskind, depth=dep}, attribute=a|b:optional_instance|c}) | データ ポイントのセットを返します。この関数は引数で指定されている reskind の属性を繰り返し使用します。このスーパー メトリックはオブジェクトの子(depth > 0)または親(depth < 0)から値を取りません。 |
たとえば、avg(${adaptertype=VMWARE, objecttype=VirtualMachine, attribute=cpu|usage_average, depth=1}) は、vCenter Server アダプタが検出したタイプ VirtualMachine のすべてのオブジェクトについて、cpu|usage_average 属性を持つすべてのメトリック インスタンスの平均を算出します。VMware Aria Operations は、スーパー メトリックを割り当てたオブジェクト タイプの 1 レベル下位のオブジェクトを検索します。
シングル関数
シングル関数は、単一の値または単一の値ペアに対してのみ動作します。
関数 | フォーマット | 説明 |
---|---|---|
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 の双曲線正接。 |
演算子
演算子は、関数を囲むか、関数の間に挿入する数学記号およびテキストです。
演算子 | 説明 |
---|---|
+ | 加算 |
- | 減算 |
* | 乗算 |
/ | 除算 |
% | モジュロ |
== | 等しい |
! = | 等しくない |
< | 小さい |
<= | 小さいか等しい |
> | 大きい |
>= | 大きいか等しい |
|| | または |
&& | および |
! | Not |
? : | 3 項演算子。If/then/else 例:conditional_expression ? expression_if_condition_is_true : expression_if_condition_is_false 3 項演算子については、スーパー メトリックを拡張するを参照してください。 |
( ) | 括弧 |
[ ] | 配列式で使用 |
[x, y, z] | x, y, z を含む配列。例、min([x, y, z]) |
文字列演算子 | 説明 |
---|---|
が次と等しい | メトリック/プロパティ文字列の値が指定された文字列と等しい場合に true を返します。 |
を含む | メトリック/プロパティ文字列の値が指定された文字列を含んでいる場合に true を返します。 |
startsWith | メトリック/プロパティ文字列の値が指定されたプリフィックスで始まる場合に true を返します。 |
endsWith | メトリック/プロパティ文字列の値が指定されたサフィックスで終わる場合に true を返します。 |
!equals | メトリック/プロパティ文字列の値が指定された文字列と等しくない場合に true を返します。 |
!contains | メトリック/プロパティ文字列の値が指定された文字列を含んでいない場合に true を返します。 |
!startsWith | メトリック/プロパティ文字列の値が指定されたプリフィックスで始まらない場合に true を返します。 |
!endsWith | メトリック/プロパティ文字列の値が指定されたサフィックスで終わらない場合に true を返します。 |