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.
Speichern Sie CloudWatch Logs Insights-Abfragen und führen Sie sie erneut aus
Nachdem Sie eine Abfrage erstellt haben, können Sie sie speichern, um sie später erneut auszuführen. Abfragen werden in einer Ordnerstruktur gespeichert, sodass Sie sie organisieren können. Sie können bis zu 1000 Abfragen pro Region und pro Konto speichern.
Abfragen werden auf einer regionsspezifischen Ebene gespeichert, nicht auf einer benutzerspezifischen Ebene. Wenn Sie eine Abfrage erstellen und speichern, können andere Benutzer mit Zugriff auf CloudWatch Protokolle in derselben Region alle gespeicherten Abfragen und ihre Ordnerstrukturen in der Region sehen.
Um eine Abfrage zu speichern, müssen Sie bei einer Rolle mit der Berechtigung angemeldet sein logs:PutQueryDefinition. Um die Liste Ihrer gespeicherten Abfragen anzuzeigen, müssen Sie bei einer Rolle mit der Berechtigung logs:DescribeQueryDefinitions angemeldet sein.
Anmerkung
Sie können Abfragen mit Parametern erstellen und speichern — wiederverwendbare Vorlagen mit benannten Platzhaltern. Anstatt mehrere Varianten derselben Abfrage mit unterschiedlichen Werten zu speichern, erstellen Sie eine Vorlage und geben Sie bei der Ausführung unterschiedliche Parameterwerte an. Diese Funktion wird derzeit nur für Abfragen unterstützt, die die Logs Insights-Abfragesprache verwenden. Weitere Informationen finden Sie unter Gespeicherte Abfragen mit Parametern verwenden.
Tipp
Sie können einen Ordner für gespeicherte Abfragen mit PutQueryDefinition erstellen. Um einen Ordner für Ihre gespeicherten Abfragen zu erstellen, verwenden Sie einen Schrägstrich (/), um Ihrem gewünschten Abfragenamen den gewünschten Ordnernamen voranzustellen: <. Weitere Informationen zu dieser Aktion finden Sie unter PutQueryDefinition. folder-name>/<query-name>
So speichern Sie eine neue Version einer gespeicherten Abfrage
Öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/
. -
Wählen Sie im Navigationsbereich Logs (Protokolle) und dann Logs Insights aus.
-
Wählen Sie auf der rechten Seite Queries (Abfragen) aus.
-
Wählen Sie Ihre Abfrage aus der Liste Saved queries (Gespeicherte Abfragen) aus. Anschließend wird sie im Abfrage-Editor angezeigt.
-
Ändern Sie die Abfrage. Wenn Sie die Abfrage ausführen müssen, um Ihre Arbeit zu überprüfen, wählen Sie Run query (Abfrage ausführen) aus.
-
Wenn Sie bereit sind, die neue Version zu speichern, wählen Sie Actions (Aktionen) und Save as (Speichern unter) aus.
-
Geben Sie einen Namen für die Abfrage ein.
-
(Optional) Wählen Sie den Ordner aus, in dem Sie die Abfrage speichern möchten. Wählen Sie Create new (Neu erstellen) aus, um einen Ordner zu erstellen. Wenn Sie einen neuen Ordner erstellen, können Sie Schrägstriche (/) im Ordnernamen verwenden, um eine Ordnerstruktur zu definieren. Wenn Sie beispielsweise einen neuen Ordner mit
folder-level-1/folder-level-2benennen, wird der Ordnerfolder-level-1auf der obersten Ebene erstellt. In diesem Ordner befindet sich ein weiterer Ordner namensfolder-level-2. Die Abfrage wird infolder-level-2gespeichert. -
(Optional) Ändern Sie die Protokollgruppen oder den Abfragetext der Abfrage.
-
Wählen Sie Speichern.
Um eine Abfrage zu löschen, müssen Sie bei einer Rolle mit der Berechtigung logs:DeleteQueryDefinition angemeldet sein.
So bearbeiten oder löschen Sie eine gespeicherte Abfrage
Öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/
. -
Wählen Sie im Navigationsbereich Logs (Protokolle) und dann Logs Insights aus.
-
Wählen Sie auf der rechten Seite Queries (Abfragen) aus.
-
Wählen Sie Ihre Abfrage aus der Liste Saved queries (Gespeicherte Abfragen) aus. Anschließend wird sie im Abfrage-Editor angezeigt.
-
Wählen Sie Actions (Aktionen), Edit (Bearbeiten) oder Actions (Aktionen), Delete (Löschen) aus.
Gespeicherte Abfragen mit Parametern verwenden
Gespeicherte Abfragen mit Parametern sind wiederverwendbare Abfragevorlagen mit benannten Platzhaltern. Anstatt mehrere Kopien fast identischer Abfragen zu verwalten, können Sie eine Vorlage speichern und bei der Ausführung der Abfrage unterschiedliche Parameterwerte angeben. Parameter werden nur in der CloudWatch Logs Insights-Abfragesprache unterstützt.
Funktionsweise
Beim Speichern einer Abfrage identifizieren Platzhalter die Werte, die Sie bei der Ausführung der Abfrage angeben können. Platzhalter verwenden die {{parameterName}} Syntax. Im Folgenden finden Sie ein Beispiel für eine gespeicherte Abfrage ErrorsByLevel mit dem Namen logLevel undapplicationName.
fields @timestamp, @message | filter level = {{logLevel}} | filter applicationName = {{applicationName}}
Um eine gespeicherte Abfrage auszuführen, können Sie sie aufrufen, indem Sie den Abfragenamen mit dem Präfix verwenden $ und die Parameterwerte übergeben. Die CloudWatch Logs Insights-Abfrage-Engine ersetzt jeden Platzhalter. Wenn ein Parameter Standardwerte enthält, werden diese Werte verwendet, sofern keine anderen Werte angegeben werden.
# Run query by using query name and passing parameter values explicitly $ErrorsByLevel(logLevel = "WARN", applicationName = "OrderService") # Run query without specifying parameter values - default values are used in this case. $ErrorsByLevel()
Gespeicherte Abfragenamen, die Leerzeichen oder Sonderzeichen enthalten, müssen mit Backticks umschlossen werden:
$`Errors By Level`(logLevel = "WARN")
Beispiel für gespeicherte Abfragen mit Parametern
Hinzufügen eines Ergebnislimits als Parameter
Abfragename: ErrorsByLevel mit Parametern logLevel (Standard:"ERROR"), applicationName (Standard:"OrderService") und maxResults (Standard:50)
fields @timestamp, @message, @logStream | filter level = {{logLevel}} | filter applicationName = {{applicationName}} | sort @timestamp desc | limit {{maxResults}}
# Run the query using the query name and passing parameter values $ErrorsByLevel(logLevel = "WARN", applicationName = "OrderService", maxResults = 100)
Verwenden mehrerer gespeicherter Abfragen mit Parametern
Das folgende Beispiel verwendet ErrorsByLevel eine zweite gespeicherte AbfrageRecentN, die als sort @timestamp desc | limit {{count}} (mit Parametercount, Standard20) definiert ist. Die CloudWatch Logs Insights-Abfrage-Engine erweitert jede Abfrage, bevor sie ausgeführt wird.
# Using multiple queries with parameters in sequence $ErrorsByLevel(logLevel = "WARN", applicationName = "OrderService") | $RecentN(count = 10) # Each of the queries is expanded, resulting in the following query when it is run. fields @timestamp, @message | filter level = "WARN" | filter applicationName = "OrderService" | sort @timestamp desc | limit 10
Kontingente und Fehlerbehandlung
Anmerkung
Jede gespeicherte Abfrage kann maximal 20 Parameter haben.
Die erweiterte Abfragezeichenfolge darf 10.000 Zeichen nicht überschreiten. Parameternamen müssen mit einem Buchstaben oder Unterstrich beginnen. Eine gespeicherte Abfrage kann nicht auf eine andere gespeicherte Abfrage verweisen (verschachtelte Aufrufe werden nicht unterstützt).
| Fehler | Ursache |
|---|---|
Parameter werden nur für die CWLI-Abfragesprache unterstützt |
Parameter werden nur in der CloudWatch Logs Insights-Abfragesprache unterstützt. |
Erforderliche Parameter wurden nicht in QueryString gefunden |
Für einen Parameternamen in |
Die Anzahl der Parameter überschreitet den Höchstwert von 20 |
Gespeicherte Abfragen unterstützen derzeit nur 20 Parameter. |
Doppelter Parametername |
Die Abfragedefinition enthält doppelte Parameter in |
Anmerkung
Um eine gespeicherte Abfrage mit Parametern zu erstellen oder zu aktualisieren, benötigen Sie die logs:PutQueryDefinition entsprechende Berechtigung. Um eine auszuführen, benötigen Sie logs:StartQuery undlogs:DescribeQueryDefinitions.