vRealize Operations Manager enthält Funktionen und Operatoren, die Sie in Super-Metrik-Formeln verwenden können. Bei diesen Funktionen handelt es sich entweder um Schleifenfunktionen oder um einzelne Funktionen.

Schleifenfunktionen

Schleifenfunktionen wirken sich auf mehr als einen Wert aus.

Tabelle 1. Schleifenfunktionen

Funktion

Beschreibung

avg

Durchschnitt der erfassten Werte.

combine

Fasst alle Werte der Metriken der enthaltenen Objekte in einer einzige Metrik-Zeitachse zusammen.

count

Anzahl der erfassten Werte.

max

Maximalwert der erfassten Werte.

Min

Mindestwert der erfassten Werte.

sum

Gesamtsumme der erfassten Werte.

Anmerkung:

vRealize Operations Manager 5.x enthielt zwei Summenfunktionen: sum (expr) und sumN (expr, depth). vRealize Operations Manager 6.x enthält eine Summenfunktion: sum (expr). Die Tiefe ist standardmäßig auf depth=1 festgelegt. Weitere Informationen zum Festlegen der Tiefe finden Sie unter Super-Metrik erstellen.

Argumente der Schleifenfunktion

Die Schleifenfunktion gibt einen Attribut- oder Metrikwert für ein Objekt oder einen Objekttyp zurück. Ein Attribut besteht aus Metadaten, die die Metrik für den Adapter zum Erfassen von Daten aus dem Objekt beschreibt. Eine Metrik ist eine Instanz eines Attributs. Die Argumentsyntax definiert das gewünschte Ergebnis.

Beispiel: Die CPU-Auslastung ist ein Attribut eines Objekts der virtuellen Maschine. Wenn eine virtuelle Maschine über mehrere CPUs verfügt, stellt die CPU-Auslastung für jede CPU eine Metrikinstanz dar. Wenn eine virtuelle Maschine über eine CPU verfügt, gibt die Funktion für das Attribut oder die Metrik dasselbe Ergebnis zurück.

Tabelle 2. Format der Schleifenfunktionen

Argumentsyntax – Beispiel

Beschreibung

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

Gibt einen einzelnen Datenpunkt einer bestimmten Metrik für das Objekt zurück, dem die Super-Metrik zugewiesen ist. Die Super-Metrik übernimmt keine Werte von den unter- oder übergeordneten Elementen des Objekts.

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

Gibt einen Satz an Datenpunkten für Attribute des Objekts zurück, dem die Super-Metrik zugewiesen ist. Die Super-Metrik übernimmt keine Werte von den unter- oder übergeordneten Elementen des Objekts.

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

Gibt einen einzelnen Datenpunkt einer bestimmten Metrik für den im Argument angegebenen Befehl resname zurück. Die Super-Metrik übernimmt keine Werte von den unter- oder übergeordneten Elementen des Objekts.

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

Gibt einen Satz an Datenpunkten zurück. Diese Funktion durchläuft Attribute des im Argument angegebenen Befehls resname. Die Super-Metrik übernimmt keine Werte von den unter- oder übergeordneten Elementen des Objekts.

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

Gibt einen Satz an Datenpunkten zurück. Diese Funktion durchläuft Metriken des im Argument angegebenen Befehls reskind. Diese Super-Metrik verwendet Werte aus den untergeordneten (depth > 0) oder übergeordneten (depth < 0) Objekten, wobeidepth den Speicherort der Objekte in der Beziehungskette beschreibt.

Beispiel: Eine typische Beziehungskette enthält ein Rechenzentrum, ein Cluster, einen Host und virtuelle Maschinen, wobei sich das Rechenzentrum ganz oben und die virtuellen Maschinen ganz unten befinden. Wenn die Super-Metrik dem Cluster zugeordnet ist und die Funktionsdefinition eine Tiefe (depth) von 2 aufweist, verwendet die Super-Metrik die Werte von den virtuellen Maschinen. Wenn die Funktion eine Tiefe (depth) von 1 aufweist, verwendet die Super-Metrik Werte aus dem Rechenzentrum.

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

Gibt einen Satz an Datenpunkten zurück. Diese Funktion durchläuft Attribute des im Argument angegebenen Befehls reskind. Diese Super-Metrik verwendet Werte aus den untergeordneten (depth > 0) oder übergeordneten (depth < 0) Objekten.

Beispiel: avg(${adapterkind=VMWARE, resourcekind=VirtualMachine, attribute=cpu|usage_average, depth=1}) berechnet den durchschnittlichen Wert von allen Metrikinstanzen mit dem cpu|usage_average-Attribut für alle Objekte des Typs VirtualMachine, die der vCenter-Adapter findet. vRealize Operations Manager sucht nach Objekten eine Ebene unter dem Objekttyp, dem Sie die Super-Metrik zugeordnet haben.

Einzelne Funktionen

Einzelne Funktionen wirken sich nur auf einen einzigen Wert oder ein einziges Wertepaar aus.

Tabelle 3. Einzelne Funktionen

Funktion

Formatieren

Beschreibung

abs

abs(x)

Absolutwert von x. x kann jede Gleitkommazahl sein.

acos

acos(x)

Arkuskosinus von x.

asin

asin(x)

Arkussinus von x.

atan

atan(x)

Arkustangens von x.

ceil

ceil(x)

Die kleinste Ganzzahl, die größer gleich x ist.

cos

cos(x)

Kosinus von x.

cosh

cosh(x)

Kosinus hyperbolicus von x.

exp

exp(x)

e hoch x.

floor

floor(x)

Die höchste Ganzzahl, die kleiner gleich x ist.

log

log(x)

Natürlicher Logarithmus (Basis x) von x.

log10

log10(x)

Zehnerlogarithmus (Basis 10) von x.

pow

pow(x,y)

x hoch y.

rand

rand()

Generiert eine nach dem Zufallsprinzip ausgewählte Pseudo-Gleitkommazahl größer oder gleich 0,0 und kleiner als 1,0.

sin

sin(x)

Sinus von x.

sinh

sinh(x)

Sinus hyperbolicus von x.

sqrt

sqrt(x)

Quadratwurzel von x.

tan

tan(x)

Tangente von x.

tanh

tanh(x)

Tangens hyperbolicus von x.

Operatoren

Operatoren sind mathematische Symbole zum Umschließen oder zum Einfügen zwischen Funktionen.

Tabelle 4. Operatoren

Operatoren

Beschreibung

+

Plus

-

Subtrahieren

*

Multiplizieren

/

Dividieren

%

Modulo

==

Gleich

!=

Ungleich

<

Kleiner als

<=

Kleiner als oder gleich

>

Größer als

>=

Größer als oder gleich

||

Oder

&&

Und

!

Nicht

? :

Dreifach-Operator. Wenn/dann/sonst

Beispiel: konditionaler_Ausdruck ? Ausdruck_wenn_Bedingung_ist_wahr : Ausdruck_wenn_Bedingung_ist_falsch

Weitere Informationen zu Dreifach-Operatoren finden Sie unter Super-Metriken verbessern.

( )

Runde Klammern

[ ]

Array an Ausdrücken benutzen

[x, y, z]

Ein Array, das x, y, z enthält. Zum Beispiel: min([x, y, z])