vRealize Operations Manager Ermöglicht Ihnen, Ihre Super-Metriken zu verbessern, indem Sie Eintrags-Aliasing bei Klauseln und Ressourcen benutzen.

Wo-Klausel

Die Wo-Klausel prüft, ob ein bestimmter Metrikwert in der Super-Metrik benutzt werden muss. Benutzen Sie dieses Klausel, um auf eine andere Metrik desselben Objekts zu zeigen, zum Beispiel wo = "metric_group|my_metric > 0.

Beispiel: count(${adaptertype = ExampleAdapter, objecttype = ExampleObject, metric = ExampleGroup|Rating, depth=2, where = "==1"})

Ressourcen-Eintrag-Aliasing

Ressourcen-Einträge werden benutzt, um von vRealize Operations Manager Metrikdaten für Super-Metrik-Berechnungen abzurufen. Ein Ressourcen-Eintrag ist Teil eines Ausdrucks, welcher mit $ beginnt, gefolgt von einem {..} Block. Bei der Berechnung einer Super-Metrik kann es vorkommen, dass Sie denselben Ressourcen-Eintrag mehrmals benutzen müssen. Wenn Sie bei Ihrer Berechnung Änderungen durchführen müssen, müssen die Änderungen bei jedem einzelnen Ressourcen-Eintrag gemacht werden, und das kann zu Fehlern führen. Benutzen Sie Ressourcen-Eintrag-Aliasing, um den Ausdruck erneut zu schreiben.

Das folgende Beispiel zeigt einen Ressourcen-Eintrag, der zweimal benutzt worden ist.

(min(${adapterkind=VMWARE, resourcekind=HostSystem, attribute= cpu|demand|active_longterm_load, depth=5, where=”>=0”}) + 0.0001)/(max(${adapterkind=VMWARE, resourcekind=HostSystem, attribute=cpu|demand|active_longterm_load, depth=5, where=”>=0”}) + 0.0001)"

Wenn Sie Ressourcen-Eintrag-Aliasing benutzen, können Sie den Ausdruck wie folgt schreiben. Das Ergebnis beider Ausdrücke ist identisch.

(min(${adapterkind=VMWARE, resourcekind=HostSystem, attribute= cpu|demand|active_longterm_load, depth=5, where=”>=0”} as cpuload) + 0.0001)/(max(cpuload) + 0.0001)"

Richten Sie sich nach diesen Leitlinien, wenn Sie Ressourcen-Eintrag-Aliasing benutzen:

  • Um ein Alias zu erstellen, muss nach dem Ressourcen-Eintrag ein as folgen und dann der alias:name. Beispiel: ${…} als alias_name.

  • Das Alias darf die Sonderzeichen ()[]+-*/%|&!=<>,.?:$ nicht enthalten und darf nicht mit einer Ziffer beginnen.

  • Bei einem Aliasnamen werden Klein- und Großbuchstaben unterschieden, wie bei allen Namen in Super-Metrik-Ausdrücken.

  • Die Benutzung eines Aliasnamens ist optional. Sie können ein Alias definieren, ohne ihn in einem Ausdruck zu benutzen.

  • Aliasnamen müssen eindeutig sein und können nicht mehrmals definiert werden. Beispiel: ${resource1,…} as r1 + ${resource2,…} als R1.

  • Sie können mehrere Aliase für denselben Ressourcen-Eintrag spezifizieren. Beispiel: ${…} als a1 als a2.

Konditionaler Ausdruck ?: Dreifach-Operatoren

Um konditionale Ausdrücke auszuführen, können Sie in einem Ausdruck Dreifach-Operatoren benutzen.

Beispiel: expression_condition ? expression_if_true : expression_if_false.

Das Ergebnis des konditionalen Ausdrucks wird in eine Zahl umgewandelt. Wenn der Wert ungleich 0 ist, gilt die Bedingung als wahr bzw. zutreffend.

Beispiel: -0.7 ? 10 : 20 ergibt 10. 2 + 2 / 2 - 3 ? 4 + 5 / 6 : 7 + 8 ergibt 15 (7 + 8).

Je nach der Bedingung (Kondition) wird der Ausdruck entweder als expression_if_true oder expression_if_false ausgeführt, aber nicht durch beide. Das ermöglicht Ihnen, Ausdrücke zu schreiben wie ${this, metric=cpu|demandmhz} als ein != 0 ? 1/a : -1. Ein Dreifach-Operator kann in all seinen Ausdrücken andere Operatoren enthalten, einschließlich anderer Dreifach-Operatoren.

Beispiel: !1 ? 2 ? 3 : 4 : 5 ergibt 5.