Connect zu einer OpenSearch Datenquelle herstellen - Amazon Managed Grafana

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.

Connect zu einer OpenSearch Datenquelle herstellen

Anmerkung

In Arbeitsbereichen, die Version 9 oder neuer unterstützen, müssen Sie für diese Datenquelle möglicherweise das entsprechende Plugin installieren. Weitere Informationen finden Sie unter Erweitere deinen Workspace mit Plugins.

Mit Amazon Managed Grafana können Sie Open Source OpenSearch(oder Legacy-Elasticsearch) als Datenquelle hinzufügen. Sie können viele Arten einfacher oder komplexer OpenSearch Abfragen ausführen, um darin gespeicherte Logs oder Metriken zu visualisieren. OpenSearch Sie können Ihre Diagramme auch mit den in OpenSearch gespeicherten Protokollereignissen annotieren.

OpenSearch Als Datenquelle hinzufügen

Anmerkung

Um die OpenSearch Datenquelle hinzufügen zu können, müssen Sie Ihr Grafana-IAM-Konto zu den Rollen ALL_ACCESS und SECURITY_MANAGER hinzufügen.

  1. Öffnen Sie das Seitenmenü, indem Sie das Grafana-Symbol in der oberen Kopfzeile auswählen.

  2. Im Seitenmenü unter dem Link Dashboards sollten Sie den genannten Link Datenquellen finden.

  3. Wählen Sie in der oberen Kopfzeile die Schaltfläche + Datenquelle hinzufügen.

  4. Wählen Sie OpenSearchaus der Dropdownliste Typ aus.

Anmerkung

Wenn Sie den Link Datenquellen nicht in Ihrem Seitenmenü sehen, bedeutet das, dass Ihr aktueller Benutzer die Admin Rolle nicht hat.

Name Beschreibung
Name Der Name der Datenquelle. So sehen Sie die Datenquelle in Bedienfeldern und Abfragen.
Default Die Standarddatenquelle bedeutet, dass sie für neue Panels vorab ausgewählt wird.
Url Das HTTP-Protokoll, die IP und der Port Ihres OpenSearch Servers.
Access Server (Standard) = Die URL muss vom Grafana-Backend/-Server aus zugänglich sein. Browser = Die URL muss vom Browser aus zugänglich sein.

Der Zugriffsmodus steuert, wie Anfragen an die Datenquelle behandelt werden. Der Server sollte der bevorzugte Weg sein, wenn nichts anderes angegeben ist.

Serverzugriffsmodus (Standard)

Alle Anfragen werden vom Browser an das Grafana-Backend oder den Server gestellt, der die Anfragen an die Datenquelle weiterleitet, wodurch mögliche CORS-Anforderungen (Cross-Origin Resource Sharing) umgangen werden. Wenn Sie diesen Zugriffsmodus wählen, muss die URL vom Grafana-Backend oder -Server aus zugänglich sein.

(direkter) Browserzugriff

Amazon Managed Grafana unterstützt keinen direkten Browserzugriff auf die OpenSearch Datenquelle.

Index-Einstellungen

Hier können Sie eine Standardeinstellung für den time field und den Namen Ihres OpenSearch Indexes angeben. Sie können ein Zeitmuster für den Indexnamen oder ein Platzhalterzeichen verwenden.

OpenSearch/Elasticsearch-Version

Geben Sie Ihre OpenSearch oder eine ältere Elasticsearch-Version im Drop-down-Menü für die Version an. Die Version ist wichtig, da es für jede Version Unterschiede in der Zusammensetzung von Abfragen gibt. Derzeit unterstützt Grafana OpenSearch 1.0.x. Unterstützte Versionen von Elasticsearch sind2.0+,, 5.0+5.6+, 6.0+ und. 7.0+ Der Wert 5.6+ bedeutet Version 5.6 oder höher, aber niedriger als 6.0. Der Wert 6.0+ bedeutet Version 6.0 oder höher, aber niedriger als 7.0. Schließlich 7.0+ bedeutet dies Version 7.0 oder höher, aber niedriger als 8.0.

Minimales Zeitintervall

Eine Untergrenze für die auto Gruppierung nach Zeitintervall. Es wird empfohlen, die Schreibfrequenz einzustellen, z. B. 1m wenn Ihre Daten jede Minute geschrieben werden. Diese Option kann auch in einem Dashboard unter Datenquellenoptionen überschrieben/konfiguriert werden. Dieser Wert muss als Zahl gefolgt von einer gültigen Zeit-ID formatiert werden, z. B. 1m (1 Minute) oder 30s (30 Sekunden). Die folgenden Zeitkennungen werden unterstützt.

Kennung Beschreibung
y Jahr
M Monat
w Woche
d Tag
h Stunde
m Minute
s Sekunde
ms Millisekunde

Logs (Protokolle)

Zwei Parameter Message field name und Level field name können optional auf der Seite mit den Datenquelleneinstellungen konfiguriert werden. Sie legen fest, welche Felder für Protokollmeldungen und Protokollebenen bei der Visualisierung von Anmeldungen verwendet werden. Erkunden

Wenn Sie beispielsweise eine Standardkonfiguration von Filebeat für den Versand von Logs verwenden OpenSearch, sollte die folgende Konfiguration funktionieren.

  • Name des Nachrichtenfeldes: Nachricht

  • Feldname der Ebene: fields.level

Datenverknüpfungen erstellen einen Link von einem bestimmten Feld aus, auf das in der Protokollansicht in Explore zugegriffen werden kann.

Jede Datenlink-Konfiguration besteht aus den folgenden Komponenten:

  • Feld — Name des Felds, das von der Datenverbindung verwendet wird.

  • URL/Abfrage — Wenn der Link extern ist, geben Sie die vollständige Link-URL ein. Wenn es sich bei dem Link um einen internen Link handelt, dient diese Eingabe als Abfrage für die Zieldatenquelle. In beiden Fällen können Sie den Wert aus dem Feld mit einem ${__value.raw } Makro interpolieren.

  • Interner Link — Wählen Sie diese Option, wenn es sich um einen internen oder externen Link handelt. Wenn es sich um einen internen Link handelt, können Sie mit einer Datenquellenauswahl die Zieldatenquelle auswählen. Es werden nur Tracing-Datenquellen unterstützt.

Verwenden der OpenSearch Datenquelle

Editor für metrische Abfragen

Mit dem OpenSearch Abfrage-Editor können Sie mehrere Metriken auswählen und nach mehreren Begriffen oder Filtern gruppieren. Verwenden Sie die Plus- und Minus-Symbole auf der rechten Seite, um Metriken hinzuzufügen/zu entfernen oder nach Klauseln zu gruppieren. Für einige Metriken und Klauseln zum Gruppieren nach Optionen stehen Optionen zur Verfügung. Wählen Sie den Optionstext, um die Zeile zu erweitern und Metriken oder Gruppierungsoptionen anzuzeigen und zu bearbeiten.

Benennungen und Aliasmuster für Serien

Sie können den Namen für Zeitreihen über das Alias Eingabefeld steuern.

Muster Beschreibung
{{term fieldname}} Ersetzt durch den Wert eines Begriffs Group By.
{{metric}} Ersetzt durch den Namen der Metrik (z. B. Durchschnitt, Min., Max).
{{field}} Ersetzt durch den Namen des Metrikfeldes.

Pipeline-Kennzahlen

Einige Metrik-Aggregationen werden als Pipeline-Aggregationen bezeichnet, z. B. Moving Average und Derivative. OpenSearch Pipeline-Metriken erfordern, dass auf einer anderen Metrik basiert. Verwenden Sie das Augensymbol neben der Metrik, um zu verhindern, dass Metriken im Diagramm angezeigt werden. Dies ist nützlich für Metriken, die Sie nur in der Abfrage zur Verwendung in einer Pipeline-Metrik haben.

Erstellen von Vorlagen

Anstatt Dinge wie Server-, Anwendungs- und Sensornamen in Ihren metrischen Abfragen fest zu codieren, können Sie stattdessen Variablen verwenden. Variablen werden als Drop-down-Auswahlfelder oben im Dashboard angezeigt. Sie können diese Dropdown-Felder verwenden, um die in Ihrem Dashboard angezeigten Daten zu ändern.

Weitere Informationen zu Vorlagen und Vorlagenvariablen finden Sie unter. Vorlagen und Variablen

Variable abfragen

Die OpenSearch Datenquelle unterstützt zwei Arten von Abfragen, die Sie im Abfragefeld der Abfragevariablen verwenden können. Die Abfrage wird mit einer benutzerdefinierten JSON-Zeichenfolge geschrieben.

Abfrage Beschreibung
{"find": "fields", "type": "keyword"} Gibt eine Liste von Feldnamen mit dem Indextyp zurückkeyword.
{"find": "terms", "field": "@hostname", "size": 1000} Gibt eine Liste von Werten für ein Feld zurück, wobei die Begriffsaggregation verwendet wird. Query verwendet den aktuellen Dashboard-Zeitraum als Zeitbereich für die Abfrage.
{"find": "terms", "field": "@hostname", "query": '<lucene query>'} Gibt eine Werteliste für ein Feld zurück, wobei die Begriffsaggregation und ein bestimmter Lucene-Abfragefilter verwendet werden. Query verwendet den aktuellen Dashboard-Zeitraum als Zeitbereich für die Abfrage.

Für Begriffsabfragen gilt eine Standardgrößenbeschränkung von 500. Um ein benutzerdefiniertes Limit festzulegen, legen Sie die Größeneigenschaft in Ihrer Abfrage fest. Sie können andere Variablen in der Abfrage verwenden. Das folgende Codebeispiel zeigt die Abfragedefinition für eine Variable mit dem Namen$host.

{"find": "terms", "field": "@hostname", "query": "@source:$source"}

Im vorherigen Beispiel verwenden wir eine andere Variable, die $source innerhalb der Abfragedefinition benannt ist. Immer wenn Sie den aktuellen Wert der Variablen über die Dropdownliste ändern, wird eine Aktualisierung der $source $host Variablen initiiert. Nach dem Update enthält die $host Variable nur Hostnamen, die in diesem Fall nach der @source Dokumenteigenschaft gefiltert wurden.

Diese Abfragen geben standardmäßig Ergebnisse in der Reihenfolge der Begriffe zurück (die dann wie bei jeder Variablen alphabetisch oder numerisch sortiert werden können). Um eine Liste von Begriffen zu erstellen, die nach der Anzahl der Dokumente sortiert sind (eine Liste mit den wichtigsten N-Werten), fügen Sie eine orderBy Eigenschaft von hinzu. doc_count Dadurch wird automatisch eine absteigende Sortierung ausgewählt. Die Verwendung asc mit doc_count (einer Liste unter N) kann durch Einstellung erfolgenorder: "asc", aber davon wird abgeraten, da dadurch der Fehler bei der Anzahl der Dokumente zunimmt. Um Begriffe in der Reihenfolge der Anzahl der Dokumente beizubehalten, setzen Sie die Dropdownliste Sortieren der Variablen auf Deaktiviert. Alternativ können Sie auch weiterhin Alphabetisch verwenden, um sie neu zu sortieren.

{"find": "terms", "field": "@hostname", "orderBy": "doc_count"}

Verwenden von Variablen in Abfragen

Es gibt zwei Syntaxen:

  • $<varname>Beispiel: @hostname: $hostname

  • [[varname]]Beispiel: @hostname: [[hostname]]

Warum zwei Möglichkeiten? Die erste Syntax ist einfacher zu lesen und zu schreiben, erlaubt es Ihnen jedoch nicht, eine Variable in der Mitte eines Wortes zu verwenden. Wenn die Optionen Mehrwert oder Alle Werte einbeziehen aktiviert sind, konvertiert Grafana die Beschriftungen von Klartext in eine Lucene-kompatible Bedingung.

Im vorherigen Beispiel haben wir eine Lucene-Abfrage, die Dokumente anhand der Eigenschaft mithilfe einer Variablen namens filtert. @hostname $hostname Sie verwendet auch eine Variable im Eingabefeld Begriffe gruppieren nach Feld. Auf diese Weise können Sie mithilfe einer Variablen schnell ändern, wie die Daten gruppiert sind.

Anmerkungen

Anmerkungen ermöglichen es Ihnen, umfangreiche Ereignisinformationen über Grafiken zu legen. Sie fügen Annotationsabfragen über das Dashboard-Menü oder die Ansicht Anmerkungen hinzu. Grafana kann jeden OpenSearch Index nach Annotationsereignissen abfragen. Weitere Informationen finden Sie unter Anmerkungen.

Name Beschreibung
Query Sie können die Suchabfrage leer lassen oder eine Lucene-Abfrage angeben.
Time Der Name des Zeitfeldes; muss ein Datumsfeld sein.
Time End Der optionale Name des Zeitendfeldes muss ein Datumsfeld sein. Wenn diese Option aktiviert ist, werden Anmerkungen als Bereich zwischen Uhrzeit und Zeitende markiert.
Text Feld für die Beschreibung des Ereignisses.
Tags Optionaler Feldname, der für Event-Tags verwendet werden soll (kann ein Array oder eine CSV-Zeichenfolge sein).

Abfragen von -Protokollen

Das Abfragen und Anzeigen von Protokolldaten von OpenSearch ist in Explore verfügbar. Um Ihre Protokolle anzuzeigen, wählen Sie die OpenSearch Datenquelle aus und geben Sie dann optional eine Lucene-Abfrage ein. Weitere Informationen finden Sie unter Erkunden.

Abfragen protokollieren

Nachdem das Ergebnis zurückgegeben wurde, zeigt das Protokollfenster eine Liste der Protokollzeilen und ein Balkendiagramm, wobei die X-Achse die Zeit und die Y-Achse die Häufigkeit oder Anzahl anzeigt.

Filtern von Protokollnachrichten

Geben Sie optional eine Lucene-Abfrage in das Abfragefeld ein, um die Protokollnachrichten zu filtern. Wenn Sie beispielsweise ein Filebeat-Standard-Setup verwendenfields.level:error, sollten Sie in der Lage sein, nur Fehlerprotokollmeldungen anzuzeigen.