vRealize Operations Manager에는 수퍼 메트릭 공식에서 사용할 수 있는 함수와 연산자가 포함되어 있습니다. 함수는 루핑 함수 또는 단일 함수입니다.

루핑 함수

루핑 함수는 둘 이상의 값에서 작동합니다.

표 1. 루핑 함수

함수

설명

avg

수집된 값의 평균입니다.

combine

단일 메트릭 타임라인에 포함된 개체의 모든 메트릭 값을 결합합니다.

계수

수집된 값의 수입니다.

max

수집된 값의 최대값입니다.

수집된 값의 최소값입니다.

sum

수집된 값의 합계입니다.

참고:

vRealize Operations Manager 5.x에는 두 개의 sum 함수, sum (expr)sumN (expr, depth)이 있습니다. vRealize Operations Manager 6.x에는 하나의 sum 함수 sum (expr)이 있습니다. 기본적으로 깊이는 depth=1로 설정됩니다. 깊이를 설정하는 방법에 대한 자세한 내용은 수퍼 메트릭 생성 항목을 참조하십시오.

루핑 함수 인수

루핑 함수는 개체 또는 개체 유형의 특성 또는 메트릭 값을 반환합니다. 특성은 어댑터가 개체에서 수집하는 메트릭을 설명하는 메타데이터입니다. 메트릭은 특성의 인스턴스입니다. 인수 구문은 원하는 결과를 정의합니다.

예를 들어 CPU 사용량은 가상 시스템 개체의 특성입니다. 가상 시스템에 여러 CPU가 있는 경우 각 CPU의 CPU 사용량이 메트릭 인스턴스입니다. 가상 시스템에 CPU가 한 개 있는 경우 특성 또는 메트릭에 대한 함수는 동일한 결과를 반환합니다.

표 2. 루핑 함수 형식

인수 구문 예

설명

funct(${this, metric =a|b:optional_instance|c})

수퍼 메트릭이 할당된 개체에 대해 특정 메트릭의 단일 데이터 지점을 반환합니다. 이 수퍼 메트릭은 개체의 하위 또는 상위 항목 값을 사용하지 않습니다.

funct(${this, attribute=a|b:optional_instance|c})

수퍼 메트릭이 할당된 개체의 특성에 대해 데이터 지점 집합을 반환합니다. 이 수퍼 메트릭은 개체의 하위 또는 상위 항목 값을 사용하지 않습니다.

funct(${adapterkind=adaptkind, resourcekind=reskind, resourcename=resname, identifiers={id1=val1id2=val2,…}, metric=a|b:instance|c})

인수에 지정된 resname에 대해 특정 메트릭의 단일 데이터 지점을 반환합니다. 이 수퍼 메트릭은 개체의 하위 또는 상위 항목 값을 사용하지 않습니다.

funct(${adapterkind=adaptkind, resourcekind=reskind, resourcename=resname, identifiers={id1=val1, id2=val2,…}, attribute=a|b:optional_instance|c})

데이터 지점 집합을 반환합니다. 이 함수는 인수에 지정된 resname의 특성을 반복합니다. 이 수퍼 메트릭은 개체의 하위 또는 상위 항목 값을 사용하지 않습니다.

funct(${adapterkind=adaptkind, resourcekind=reskind, depth=dep}, metric=a|b:optional_instance|c})

데이터 지점 집합을 반환합니다. 이 함수는 인수에 지정된 reskind의 메트릭을 반복합니다. 이 수퍼 메트릭은 하위(depth > 0) 또는 상위(depth < 0) 개체의 값을 사용하며, 여기서 depth는 관계 체인의 개체 위치를 설명합니다.

예를 들어 일반 관계 체인에는 데이터 센터, 클러스터, 호스트 및 가상 시스템이 포함됩니다. 데이터 센터가 맨 위에 있고 가상 시스템이 맨 아래에 있습니다. 수퍼 메트릭이 클러스터에 할당되고 함수 정의에 depth = 2가 포함되어 있는 경우 수퍼 메트릭이 가상 시스템의 값을 사용합니다. 함수 정의에 depth = -1이 포함되어 있는 경우 수퍼 메트릭이 데이터 센터의 값을 사용합니다.

funct(${adapterkind=adaptkind, resourcekind=reskind, depth=dep}, attribute=a|b:optional_instance|c})

데이터 지점 집합을 반환합니다. 이 함수는 인수에 지정된 reskind의 특성을 반복합니다. 이 수퍼 메트릭은 하위(depth > 0) 또는 상위(depth < 0) 개체의 값을 사용합니다.

예를 들어 avg(${adapterkind=VMWARE, resourcekind=VirtualMachine, attribute=cpu|usage_average, depth=1})은 vCenter 어댑터가 찾은 유형이 VirtualMachine인 모든 개체에 대해 cpu|usage_average 특성을 가진 모든 메트릭 인스턴스 값의 평균을 계산합니다. vRealize Operations Manager는 수퍼 메트릭을 할당한 개체 유형의 한 수준 아래에 있는 개체를 검색합니다.

단일 함수

단일 함수는 단일 값 또는 단일 값 쌍에서만 작동합니다.

표 3. 단일 함수

함수

포맷

설명

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)

밑이 10인 x의 상용로그입니다.

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의 쌍곡탄젠트입니다.

연산자

연산자는 함수를 묶거나 함수 사이에 삽입하는 수학 기호입니다.

표 4. 연산자

연산자

설명

+

더하기

-

빼기

*

곱하기

/

나누기

%

모듈로

==

같음

!=

같지 않음

<

보다 작음

<=

작거나 같음

>

보다 큼

>=

크거나 같음

||

또는

&&

!

아님

? :

삼항 연산자. 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])