PutElasticsearchJson 2025.5.31.15

Bundle

org.apache.nifi | nifi-elasticsearch-restapi-nar

Beschreibung

Ein Elasticsearch-Put-Prozessor, der die offiziellen Elastic REST-Clientbibliotheken verwendet. Jedes FlowFile wird als Dokument behandelt, das an die Elasticsearch _bulk-API gesendet wird. Mehrere FlowFiles können in jeder an Elasticsearch gesendeten Anfrage zusammengefasst werden.

Tags

elasticsearch, elasticsearch5, elasticsearch6, elasticsearch7, elasticsearch8, index, json, put

Eingabeanforderung

REQUIRED

Unterstützt sensible dynamische Eigenschaften

false

Eigenschaften

Eigenschaft

Beschreibung

Max JSON Field String Length

Die maximal zulässige Länge eines Zeichenfolgenwertes bei der Analyse eines JSON-Dokuments oder -Attributs.

el-rest-client-service

Ein Elasticsearch-Clientdienst, der für Abfragen verwendet wird.

el-rest-fetch-index

Der Name des zu verwendenden Indexes.

el-rest-type

Der Typ dieses Dokuments (wird von Elasticsearch für die Indizierung und Suche verwendet).

put-es-json-charset

Gibt den Zeichensatz der Dokumentdaten an.

put-es-json-dynamic_templates

Die dynamic_templates für das Dokument. Muss als JSON-Objekt geparst werden können. Erfordert Elasticsearch 7+

put-es-json-id-attr

Der Name des FlowFile-Attributs, das den Bezeichner für das Dokument enthält. Wenn die Index-Operation „index“ lautet, kann diese Eigenschaft leer gelassen werden oder einen leeren Wert ergeben. In diesem Fall wird der Bezeichner des Dokuments automatisch von Elasticsearch generiert. Bei allen anderen Indexoperationen muss das Attribut einen nicht leeren Wert ergeben.

put-es-json-script

Das Skript für die Aktualisierung/das Upsert von Dokumenten. Gilt nur für Update-/Upsert-Operationen. Muss als JSON-Objekt geparst werden können. Wenn Sie das Feld leer lassen, wird der Inhalt des FlowFile für die Aktualisierung/das Update des Dokuments verwendet

put-es-json-scripted-upsert

Ob das Flag „scripted_upsert“ zur Upsert-Operation hinzugefügt werden soll. Bei „true“ wird Elasticsearch gezwungen, das Skript auszuführen, unabhängig davon, ob das Dokument existiert oder nicht. Die Standardeinstellung ist „false“. Wenn das bereitgestellte Upsert-Dokument (von FlowFile content) leer ist, stellen Sie sicher, dass die Option „Null/Leere Werte unterdrücken“ des Client Service Controller-Dienstes auf „Nie unterdrücken“ eingestellt ist, da sonst kein Upsert-Dokument in die Anfrage an Elasticsearch aufgenommen wird und die Operation kein neues Dokument für die Ausführung des Skripts erstellt, was zu einem „not_found“-Fehler führt

put-es-not_found-is-error

Wenn „true“, werden „not_found“-Datensätze des zugehörigen Elasticsearch-Dokuments an die Beziehung „successful“ weitergeleitet, andernfalls an die Beziehung „errors“. Wenn „Output Error Responses“ „true“ ist, werden „not_found“-Antworten von Elasticsearch an die Beziehung „error_responses“ gesendet.

put-es-output-error-responses

Wenn diese Option aktiviert ist, werden als „Fehler“ gekennzeichnete Antwortmeldungen von Elasticsearch in die Beziehung „error_responses“ ausgegeben, ohne dass dies Auswirkungen auf die Ausgabe von Flowfiles in die Beziehung „successful“- oder „errors“ hat.

put-es-record-batch-size

Die bevorzugte Anzahl von FlowFiles, die in einem einzigen Batch übertragen werden soll

put-es-record-index-op

Der Typ der Operation, der für die Indizierung verwendet wird (Erstellen, Löschen, Indizieren, Aktualisieren, Upsert)

put-es-record-log-error-responses

Wenn dies aktiviert ist, werden Fehler in den NiFi-Protokollen auf der Ebene des Fehlerprotokolls protokolliert. Andernfalls werden sie nur protokolliert, wenn die Debug-Protokollierung für NiFi insgesamt aktiviert ist. Der Zweck dieser Option ist es, dem Benutzer die Möglichkeit zu geben, fehlgeschlagene Operationen zu debuggen, ohne die Debug-Protokollierung einschalten zu müssen.

Beziehungen

Name

Beschreibung

Fehler

Datensätze/Flowfile(s), die Elasticsearch-Dokumenten entsprechen, die zu einem „error“ (innerhalb von Elasticsearch) geführt haben, werden hierher weitergeleitet.

failure

Alle FlowFiles, die aus Gründen, die nicht mit der Serververfügbarkeit zusammenhängen, fehlschlagen, werden an diese Beziehung weitergeleitet.

original

Alle FlowFiles, die ohne Anfragefehler an Elasticsearch gesendet werden, gehen an diese Beziehung.

retry

Alle FlowFiles, die aufgrund der Server-/Clusterverfügbarkeit fehlschlagen, werden an diese Beziehung weitergeleitet.

successful

Datensätze/Flowdateien, die Elasticsearch-Dokumenten entsprechen, die keinen „Fehler“ (innerhalb von Elasticsearch) verursacht haben, werden hierher weitergeleitet.

Schreibt Attribute

Name

Beschreibung

elasticsearch.put.error

Die Fehlermeldung, wenn es ein Problem beim Parsen des FlowFile, beim Senden des geparsten Dokuments an Elasticsearch oder beim Parsen der Elasticsearch-Antwort gibt

elasticsearch.bulk.error

Die _bulk-Antwort, wenn bei der Verarbeitung des Dokuments in Elasticsearch ein Fehler aufgetreten ist.

Siehe auch: