Elasticsearch Task Management

Elasticsearch Task Management
„In diesem Beitrag werden wir uns eine der experimentellen API von Elasticsearch (zum Zeitpunkt des Schreibens dieses Handbuchs) ansehen, mit dem wir Informationen über die aktuell ausgeführten Aufgaben in einem Cluster anzeigen können.

Das Task -Management ist ein großer Faktor für jeden Administrator, und wenn Sie mit einem komplexen System wie Elasticsearch arbeiten, müssen Sie einige Aufgabenüberwachung durchführen.”

Lassen Sie uns abdecken, was diese API bedeutet und wie sie Ihnen als SYS -Administrator helfen kann.

Hinweis: Abhängig von Ihren Cluster -Konfigurations- und Sicherheitseinstellungen müssen diese API möglicherweise Überwachungsberechtigungen erfordern.

Syntax anfordern

Im Folgenden wird die Syntax für das Senden der Anfrage an die Task -Management -API angezeigt.

Get /_tasks /
Get /_tasks

Sobald Sie die API anfordern, sollte der Befehl detaillierte Informationen zu den aktuellen Aufgaben oder zur Aufgabe mit der angegebenen ID zurückgeben.

Pfadparameter anfordern

Die Anforderung unterstützt einen Pfadparameter:

  • - Ein eindeutiger ID -Wert für die Aufgabe, deren Informationen Sie abrufen möchten. Die Task -ID folgt dem Muster node_id: task_number.

Anfordern von Abfragungsparametern

Um das Verhalten und das Rückgabeformat der Abfrage anzupassen, können Sie die folgenden Parameter angeben:

  1. Aktionen - Dies definiert eine Reihe von Aktionen, die zur Begrenzung der Anfrage verwendet werden. Hier können Sie die Aktionen als Liste von von Kommas getrennten Werten definieren.
  2. Detailliert - Dies ist ein boolescher Parameter, der feststellt. Diese Option ist standardmäßig falsch
  3. Group_by - Legt die Tasten fest, mit der die Aufgaben aus der Antwort gruppiert werden. Zu den akzeptierten Werten gehören:
    • Knoten - Knoten -ID.
    • Eltern - Eltern -ID.
    • Knoten - gruppieren Sie sich nicht.
  4. Node_id - definiert den Knoten oder eine Liste von Knoten, aus denen die Informationen abgerufen werden können.
  5. Eltern_Task_id - Definiert die übergeordnete ID, die zum Filtern der Antwortinformationen verwendet wird. Um alle Aufgaben anzuzeigen, geben Sie die parent_task_id als -1 an.
  6. Master_timeout - Gibt die Dauer an, bei der die Anforderung auf eine Verbindung zum Masterknoten wartet. Wenn die Anfrage nach Ablauf der Master_Timeout -Dauer keine Antwort vom Master erhält, schlägt sie fehl und gibt einen Fehler zurück. Die Standarddauer ist auf 30 Sekunden festgelegt.
  7. Timeout - ähnlich wie mit Master_TimeOut, aber dieser Wert definiert die Dauer, auf der auf eine Antwort warten kann.
  8. WACE_FOR_COMPLETION - Wenn wahr, wird die Anforderung blockiert, bis die Operation beendet ist. Standardmäßig falsch.

Antwort

Bei Erfolg wird die Anfrage detaillierte Informationen zu den angegebenen Aufgaben oder Aufgaben zurückgibt. Wenn die Aufgabe nicht gefunden wird, gibt die Anforderung einen 404-Status-Code zurück.

Beispiel Verwendung

Das folgende Beispiel zeigt, wie die Taskverwaltungs -API verwendet wird, um Informationen zu allen im Cluster ausgeführten Aufgaben anzuzeigen (alle Knoten).

curl -xget "http: // localhost: 9200/_tasks" -H "KBN -XSRF: Berichterstattung"

Die Anfrage sollte Informationen zu den Aufgaben im Cluster enthalten, wie in der folgenden Ausgabe gezeigt:

Beispiel 2

Im nächsten Beispiel verwenden wir den Parameter der Knoten, um die Antwort nur auf die Aufgaben zu beschränken, die im Knoten Slave_1 ausgeführt werden

curl -xget "http: // localhost: 9200/_tasks?nodes = slave_1 "-h" kbn -xsrf: meldeing "

Dies sollte die Aufgaben im angegebenen Knoten zurückgeben, wie in der folgenden Ausgabe gezeigt:

"Aufgaben":
"FIT416FGR1GJEFJXOXLURW: 1651265":
"Knoten": "Slave_1",
"ID": 1651265,
"Typ": "Transport",
"Aktion": "Indizes: Monitor/Flotte/global_checkpoints",
"start_time_in_millis": 1664214054489,
"running_time_in_nanos": 94450056094,
"Corningable": Falsch,
"Header":
"X-Elastic-Product-Origin": "Flotte"

Beispiel 3

In Beispiel 3 verwenden wir die Task -Management -API, um Informationen zur Aufgabe mit der angegebenen ID anzuzeigen:

curl -xget "http: // localhost: 9200/_tasks/fit416fgr1gjefjxoxlurw: 1656310" -H "KBN -XSRF: Berichterstattung"

Die Ausgabeaufgabeninformationen sind wie gezeigt:

Beispiel 4

Um detaillierte Informationen zur Aufgabe anzuzeigen, fügen Sie den detaillierten Parameter der Anforderung wie gezeigt hinzu:

curl -xget "http: // localhost: 9200/_tasks?detailled = true "-h" KBN -XSRF: Berichterstattung "

Dies sollte zusätzliche Informationen zu den Aufgaben liefern:

Abschluss

In diesem Beitrag wurde untersucht, wie die Task -Management -API in Elasticsearch verwendet wird. Mit dieser API können wir Informationen über aktuell ausgeführte Aufgaben im Cluster abrufen.

Beifall!! & Ich werde dich im nächsten fangen.