Sie können Ihre Super-Metriken verbessern, indem Sie Eintrags-Aliasing bei Klauseln und Ressourcen nutzen.

Wo-Klausel

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

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

Ressourcen-Eintrag-Aliasing

Ressourcen-Einträge werden genutzt, um von vRealize Operations Cloud Metrikdaten für Supermetrik-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 Veränderungen in Ihrer Berechnung vornehmen müssen, müssen Sie alle Ressourcen-Einträge ändern, wodurch möglicherweise Fehler auftreten können. Nutzen Sie Ressourcen-Eintrag-Aliasing, um den Ausdruck erneut zu schreiben.

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

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

Im folgenden Beispiel wird gezeigt, wie Sie einen Ausdruck mithilfe von Ressourcen-Eintrag-Aliasing schreiben können. Das Ergebnis beider Ausdrücke ist identisch.

(min(${adaptertype=VMWARE, objecttype=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:
  • Achten Sie bei der Erstellung eines Alias darauf, nach dem Ressourcen-Eintrag als und anschließend alias:name zu schreiben. 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.
  • Jeder Aliasname darf nur einmal verwendet 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 ?: Dreifachoperatoren

Sie können einen Dreifachoperator in einem Ausdruck für die Ausführung konditionaler Ausdrücke nutzen.

Beispiel: expression_condition ? expression_if_true : expression_if_false.

Das Ergebnis des konditionalen Ausdrucks wird in eine Zahl umgewandelt. Wenn der Wert nicht 0 ist, wird angenommen, dass die Bedingung korrekt ist.

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

Je nach Bedingung wird entweder expression_if_true oder expression_if_false ausgeführt, aber nicht beide zusammen. Dies ermöglicht Ihnen, Ausdrücke zu schreiben wie z. B. ${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 entspricht 5.