Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
CloudWatch Syntax der Suchausdrücke
Ein gültiger Suchausdruck hat das folgende Format.
SEARCH(' {Namespace, DimensionName1, DimensionName2, ...} SearchTerm', 'Statistic')
Zum Beispiel:
SEARCH('{AWS/EC2,InstanceId} MetricName="CPUUtilization"', 'Average')
-
Der erste Teil der Abfrage in geschweiften Klammern nach dem Wort
SEARCH
ist das zu durchsuchende Metrikschema. Das Metrikschema enthält einen Metrik-Namespace und einen oder mehrere Dimensionsnamen. Die Angabe eines Metrikschemas in einer Suchabfrage ist optional. Wenn das Metrikschema angegeben wird, muss es einen Namespace enthalten und optional einen oder mehrere Dimensionsnamen, die in diesem Namespace gültig sind.Sie müssen keine Anführungszeichen innerhalb des Metrikschemas verwenden, es sei denn, Namespace oder Dimensionsname enthalten Leerzeichen oder nicht-alphanumerischen Zeichen. In diesem Fall müssen Sie Namen, die diese Zeichen enthalten, in doppelte Anführungszeichen einschließen.
-
Auch der
SearchTerm
(Suchbegriff) ist optional. Allerdings muss eine gültige Suche entweder das Metrikschema, denSearchTerm
oder beides enthalten. Das enthältSearchTerm
normalerweise einen oder mehrere KontenIDs, Metriknamen oder Dimensionswerte. DerSearchTerm
kann mehrere Suchbegriffe enthalten; sowohl für die teilweise als auch die exakte Übereinstimmung. Er kann auch boolesche Operatoren enthalten.Die Verwendung einer Konto-ID in einem
SearchTerm
funktioniert nur bei Konten, die aus Gründen der CloudWatch kontenübergreifenden Beobachtbarkeit als Überwachungskonten eingerichtet sind. Die Syntax für eine Konto-ID inSearchTerm
lautet:aws.AccountId =
. Sie können auch444455556666
'LOCAL'
verwenden, um das Überwachungskonto selbst anzugeben::aws.AccountId = 'LOCAL'
Weitere Informationen finden Sie unter CloudWatch kontenübergreifende Beobachtbarkeit.
Der
SearchTerm
kann eine oder mehrere Regionsangaben enthalten, z. B.MetricName=
wie in diesem Beispiel; diese Angabe ist jedoch nicht erforderlich.Das Metrikschema und der
SearchTerm
müssen gemeinsam in einfache Anführungszeichen gesetzt werden. Das
Statistic
ist der Name jeder gültigen CloudWatch Statistik. Er muss in einfache Anführungszeichen eingeschlossen werden. Weitere Informationen finden Sie unter Statistiken.
Das obige Beispiel sucht im Namespace AWS/EC2
nach Metriken, die den Dimensionsnamen InstanceId
aufweisen. Alle gefundenen CPUUtilization
-Metriken werden zurückgegeben, wobei das Diagramm die Average
-Statistik anzeigt.
Ein Suchausdruck kann nur Metriken finden, die innerhalb der letzten zwei Wochen Daten gemeldet haben.
Einschränkungen für Suchausdrücke
Die maximale Länge für Suchausdruckabfragen beträgt 1024 Zeichen. Sie können bis zu 100 Suchausdrücke in einem Diagramm verwenden. Ein Diagramm kann bis zu 500 Zeitreihen darstellen.
CloudWatch Suchausdrücke: Tokenisierung
Wenn Sie a angebenSearchTerm
, sucht die Suchfunktion nach Tokens. Dabei handelt es sich um Teilzeichenfolgen, die CloudWatch automatisch aus vollständigen Metriknamen, Dimensionsnamen, Dimensionswerten und Namespaces generiert werden. CloudWatch generiert Token, die sich durch die Groß-/Kleinschreibung in der ursprünglichen Zeichenfolge unterscheiden. Auch Ziffern werden für den Beginn neuer Token verwendet. Nicht alphanumerische Zeichen dienen als Trennzeichen. Die Token werden vor und nach dem nicht alphanumerischen Zeichen erzeugt.
Eine kontinuierliche Zeichenfolge desselben Typs von Token-Trennzeichen führt zu einem Token.
Alle generierten Token bestehen aus Kleinbuchstaben. Die folgende Tabelle zeigt einige Beispiele für generierte Token.
Ursprüngliche Zeichenfolge | Erzeugte Token |
---|---|
CustomCount1 |
|
SDBFailure |
|
Project2-trial333 |
|
CloudWatch Suchausdrücke: Teilweise Treffer
Wenn Sie a angebenSearchTerm
, wird der Suchbegriff ebenfalls in Tokens umgewandelt. CloudWatchfindet Metriken, die auf partiellen Übereinstimmungen basieren. Dabei handelt es sich um Übereinstimmungen eines einzelnen Tokens, das aus dem Suchbegriff generiert wurde, mit einem einzelnen Token, das aus einem Metriknamen, einem Namespace, einem Dimensionsnamen oder einem Dimensionswert generiert wurde.
Die Suche nach teilweisen Übereinstimmungen mit einem einzelnen Token unterscheidet nicht zwischen Groß- und Kleinschreibung. So finden die folgenden Suchbegriffe die Metrik CustomCount1
:
-
count
-
Count
-
COUNT
Dagegen findet der Suchbegriff couNT
nicht die gewünschte Entsprechung CustomCount1
, da die Groß-/Kleinschreibung im Suchbegriff couNT
in die Token cou
und NT
aufgegliedert wird.
Suchen können auch zusammengesetzte Token finden, also mehrere Token, die im ursprünglichen Namen hintereinander auftreten. Die Suche nach zusammengesetzten Token unterscheidet zwischen Groß- und Kleinschreibung. Beispiel: Wenn der ursprüngliche Begriff CustomCount1
lautet, wird dieser bei der Suche nach CustomCount
oder Count1
gefunden. customcount
oder count1
finden den Begriff dagegen nicht.
CloudWatch Suchausdrücke: Exakte Treffer
Sie können nur nach exakten Übereinstimmungen des Suchbegriffs suchen, indem Sie den Teil des Begriffs, der exakt gefunden werden soll, in doppelte Anführungszeichen setzen. Diese doppelten Anführungszeichen stehen innerhalb der einfachen Anführungszeichen, die den gesamten Suchbegriff umschließen. Zum Beispiel findet SEARCH(' {MyNamespace}, "CustomCount1" ', 'Maximum')
die genaue Zeichenfolge CustomCount1
, sofern diese als Metrikname, Dimensionsname oder Dimensionswert im Namespace MyNamespace
vorliegt. Dagegen wird die Zeichenfolge mit SEARCH(' {MyNamespace}, "customcount1" ', 'Maximum')
oder SEARCH(' {MyNamespace}, "Custom" ', 'Maximum')
nicht gefunden.
Sie können teilweise und exakte Übereinstimmung in einem Suchausdruck kombinieren. Beispiel: SEARCH(' {AWS/NetworkELB, LoadBalancer} "ConsumedLCUs" OR flow ', 'Maximum')
gibt die Elastic-Load-Balancing-Metrik mit dem Namen ConsumedLCUs
sowie alle Elastic-Load-Balancing-Metriken oder -Dimensionen, die das Token flow
enthalten, zurück.
Die Suche nach exakten Übereinstimmungen ist eine gute Möglichkeit zur Suche von Namen mit Sonderzeichen (z. B. nicht-alphanumerische Zeichen oder Leerzeichen), wie im folgenden Beispiel gezeigt.
SEARCH(' {"My Namespace", "Dimension@Name"}, "Custom:Name[Special_Characters" ', 'Maximum')
CloudWatch Suchausdrücke: Ausgenommen ein Metrikschema
Alle bisherigen Beispiele enthalten ein Metrikschema in geschweiften Klammern. Aber auch Suchen, die kein Metrikschema enthalten, sind gültig.
Beispiel: SEARCH(' "CPUUtilization" ', 'Average')
gibt alle Metriknamen, Dimensionsnamen, Dimensionswerte und Namespaces zurück, die eine exakte Übereinstimmung mit der Zeichenfolge CPUUtilization
aufweisen. In den AWS Metrik-Namespaces kann dies Metriken von verschiedenen Diensten wie Amazon EC2 ECS SageMaker, Amazon und anderen beinhalten.
Um diese Suche auf nur einen AWS Service zu beschränken, empfiehlt es sich, den Namespace und alle erforderlichen Dimensionen im Metrikschema anzugeben, wie im folgenden Beispiel. Damit wird die Suche zwar auf den Namespace AWS/EC2
begrenzt, aber es werden weiterhin Ergebnisse für andere Metriken ausgegeben, wenn Sie CPUUtilization
als Dimensionswert für diese Metriken definiert haben.
SEARCH(' {AWS/EC2, InstanceType} "CPUUtilization" ', 'Average')
Alternativ können Sie den Namespace im SearchTerm
übergeben, wie im folgenden Beispiel gezeigt. Allerdings gibt diese Suche alle Zeichenfolgen mit AWS/EC2
zurück, auch wenn es sich um einen benutzerdefinierten Dimensionsnamen oder -wert handelt.
SEARCH(' "AWS/EC2" MetricName="CPUUtilization" ', 'Average')
CloudWatch Suchausdrücke: Angabe von Eigenschaftsnamen bei der Suche
Die folgende Suche nach einer exakten Übereinstimmung mit "CustomCount1"
gibt alle Metriken mit genau diesem Namen zurück.
SEARCH(' "CustomCount1" ', 'Maximum')
Aber sie gibt auch Metriken mit Dimensionsnamen, Dimensionswerten oder Namespaces zurück, die CustomCount1
enthalten. Zur weiteren Strukturierung der Suche können Sie den Eigenschaftenname für den gesuchten Objekttyp in die Suche einbeziehen. Im folgenden Beispiel werden alle Namespaces nach Metriken mit dem Namen CustomCount1
durchsucht.
SEARCH(' MetricName="CustomCount1" ', 'Maximum')
Sie können auch Namespaces und Paare mit Dimensionsname/Wert als Eigenschaftsnamen verwenden, wie in den folgenden Beispielen dargestellt. Das erste dieser Beispiele zeigt auch, dass Sie nach Eigenschaftennamen mit teilweisen Übereinstimmungen suchen können.
SEARCH(' InstanceType=micro ', 'Average')
SEARCH(' InstanceType="t2.micro" Namespace="AWS/EC2" ', 'Average')
CloudWatch Suchausdrücke: Nicht-alphanumerische Zeichen
Nicht-alphanumerische Zeichen dienen als Trennzeichen und markieren so, wo die Namen von Metriken, Dimensionen, Namespaces und Suchbegriffen in Token aufgegliedert werden. Beim Aufgliedern von Begriffen werden nicht alphanumerische entfernt und nicht in Token übernommen. Beispiel: Network-Errors_2
generiert die Token network
, errors
und 2
.
Ihr Suchbegriff kann beliebige nicht alphanumerische Zeichen enthalten. Wenn diese Zeichen in Ihrem Suchbegriff enthalten sind, können sie zusammengesetzte Token in teilweisen Übereinstimmungen angeben. Beispiel: Die folgenden Suchen finden Metriken mit dem Namen Network-Errors-2
oder NetworkErrors2
.
network/errors network+errors network-errors Network_Errors
Wenn Sie einen exakten Wert suchen, müssen alle nicht alphanumerischen Zeichen in der exakten Suche mit den in der gesuchten Zeichenfolge verwendeten Zeichen übereinstimmen. Beispiel: Wenn Sie nach Network-Errors-2
suchen, führt die Suche nach "Network-Errors-2"
zum Erfolg, nicht aber die Suche nach "Network_Errors_2"
.
Wenn Sie eine exakte Übereinstimmung suchen, müssen die folgenden Zeichen durch den umgekehrten Schrägstrich als Escape-Zeichen markiert werden.
" \ ( )
Um beispielsweise den Metriknamen Europe\France Traffic(Network)
als exakte Übereinstimmung zu finden, muss der Suchbegriff "Europe\\France Traffic\(Network\)"
lauten.
CloudWatch Suchausdrücke: Boolesche Operatoren
Sie können in der Suche die booleschen Operatoren AND
, OR
und NOT
im SearchTerm
verwenden. Boolesche Operatoren werden innerhalb der einfachen Anführungszeichen, die den gesamten Suchbegriff einschließen, verwendet. Boolesche Operatoren unterscheiden zwischen Groß- und Kleinschreibung. and
, or
und not
sind somit keine gültigen booleschen Operatoren.
Sie können AND
explizit in der Suche verwenden, z. B. SEARCH('{AWS/EC2,InstanceId} network AND packets', 'Average')
. Wenn Sie keinen booleschen Operator zwischen Suchbegriffen angeben, wird implizit der Operator AND
verwendet. SEARCH('
{AWS/EC2,InstanceId} network packets ', 'Average')
führt also zum selben Ergebnis.
Mit NOT
können Sie Datenteilmengen aus den Ergebnissen ausschließen. Beispiel: SEARCH(' {AWS/EC2,InstanceId} MetricName="CPUUtilization" NOT
i-1234567890123456 ', 'Average')
gibt die CPUUtilization
für alle Instances mit Ausnahme der Instance i-1234567890123456
aus. Sie können auch einen NOT
-Ausdruck als einzigen Suchbegriff verwenden. Beispiel: SEARCH( 'NOT Namespace=AWS ', 'Maximum')
gibt alle benutzerdefinierten Metriken aus (Metriken mit Namespaces, in denen AWS
nicht vorkommt).
Sie können mehrere NOT
-Ausdrücke in einer Abfrage verwenden. Beispiel: SEARCH(' {AWS/EC2,InstanceId} MetricName="CPUUtilization" NOT "ProjectA" NOT
"ProjectB" ', 'Average')
gibt die CPUUtilization
aller Instances in der Region mit Ausnahme der Instances aus, die einen Dimensionswert von ProjectA
oder ProjectB
enthalten.
Sie können die booleschen Operatoren kombinieren, um weitere leistungsstarke und detaillierte Suchen zu erstellen (vgl. die folgenden Beispiele). Verwenden Sie Klammern zum Gruppieren der Operatoren.
In den beiden nächsten Beispielen werden alle Metriknamen zurückgegeben, die sowohl ReadOps
aus den Namespaces als auch aus den EC2 Namespaces enthalten. EBS
SEARCH(' (EC2 OR EBS) AND MetricName=ReadOps ', 'Maximum')
SEARCH(' (EC2 OR EBS) MetricName=ReadOps ', 'Maximum')
Im folgenden Beispiel wird die vorherige Suche auf Ergebnisse beschränkt, die ProjectA
als Wert einer Dimension enthalten.
SEARCH(' (EC2 OR EBS) AND ReadOps AND ProjectA ', 'Maximum')
Das folgenden Beispiel nutzt verschachtelte Gruppierungen. Es gibt Lambda-Metriken für Fehler (Errors
) aus allen Funktionen und Funktionsaufrufe (Invocations
) mit Namen, die die Zeichenfolgen ProjectA
oder ProjectB
enthalten, aus.
SEARCH(' {AWS/Lambda,FunctionName} MetricName="Errors" OR (MetricName="Invocations" AND (ProjectA OR ProjectB)) ', 'Average')
CloudWatch Suchausdrücke: Mathematische Ausdrücke verwenden
Sie können einen Suchausdruck als Teil von mathematischen Ausdrücken in einem Diagramm verwenden.
Beispiel: SUM(SEARCH(' {AWS/Lambda, FunctionName} MetricName="Errors" ', 'Sum'))
gibt die Summe der Errors
-Metrik für alle Ihre Lambda-Funktionen zurück.
Mit separaten Zeilen für Such- und mathematische Ausdrücke erzielen Sie eventuell nützlichere Ergebnisse. Angenommen, Sie verwenden die beiden folgenden Ausdrücke in einem Diagramm. Die erste Zeile zeigt separate Errors
-Linien für jede Ihrer Lambda-Funktionen an. Die ID dieses Ausdrucks ist e1
. Die zweite Zeile fügt eine weitere Linie mit den Summen der Fehler aller Funktionen hinzu.
SEARCH(' {AWS/Lambda, FunctionName}, MetricName="Errors" ', 'Sum') SUM(e1)