PutElasticsearchJson 2025.5.31.15

バンドル

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

説明

Elasticsearch put プロセッサー は、公式の Elastic REST クライアントライブラリを使用します。各 FlowFile は Elasticsearch _bulk API に送られるドキュメントとして扱われます。Elasticsearch に送信される各リクエストには、複数の FlowFiles をバッチすることができます。

タグ

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

入力要件

REQUIRED

機密動的プロパティをサポート

false

プロパティ

プロパティ

説明

最大 JSON フィールド文字列長

JSON ドキュメントまたは属性をパースするときに許容される文字列値の最大長。

el-rest-client-service

クエリの実行に使用する Elasticsearch クライアントサービスです。

el-rest-fetch-index

使用するインデックスの名前。

el-rest-type

このドキュメントのタイプ (Elasticsearch がインデックス作成と検索に使用します)。

put-es-json-charset

ドキュメントデータの文字セットを指定します。

put-es-json-dynamic_templates

ドキュメントのdynamic_templates。JSON オブジェクトとして解析可能でなければなりません。Elasticsearch 7+が必要

put-es-json-id-attr

ドキュメントの識別子を含む FlowFile 属性の名前。Index Operation が "index" の場合、このプロパティは空のままか、空の値で評価されます。この場合、ドキュメントの識別子は Elasticsearch によって自動生成されます。他のすべてのインデックス演算子では、属性は空でない値で評価されなければなりません。

put-es-json-script

ドキュメントの更新/アップサートのスクリプト。Update/Upsert 操作にのみ適用されます。JSON オブジェクトとして解析可能でなければなりません。空白の場合、ドキュメントの更新/アップサートに FlowFile のコンテンツが使用されます。

put-es-json-scripted-upsert

Upsert操作にscripted_upsertフラグを追加するかどうか。trueの場合、Elasticsearch はドキュメントが存在してもしなくてもScriptを実行するために強制され、デフォルトは false です。提供されたアップサートドキュメント (FlowFile コンテンツから) が空の場合、クライアントサービスController Serviceの Suppress Null/Empty Values を Never Suppress にセットしなければ、Elasticsearch へのリクエストに "upsert" ドキュメントが含まれず、スクリプトが実行するための新しいドキュメントが作成されないため、"not_found" エラーが発生します。

put-es-not_found-is-error

true の場合、 "not_found" Elasticsearch ドキュメントに関連付けられた記録は "successful" リレーションシップにルーティングされ、そうでない場合は "errors" リレーションシップにルーティングされます。Output Error Responses が "true" の場合、Elasticsearch からの "not_found" レスポンスが error_responses リレーションシップに送られます。

put-es-output-error-responses

この設定を有効にすると、 "エラー" とマークされたElasticsearchからの応答メッセージは "error_responses" リレーションシップに出力されます。これは "successful" または "errors" リレーションシップへのフローファイルの出力に影響しません。

put-es-record-batch-size

1バッチで送信する FlowFiles の希望数。

put-es-record-index-op

インデックスに使用する演算子のタイプ (作成、削除、インデックス、更新、upsert)

put-es-record-log-error-responses

これを有効にすると、エラーはエラーログレベルで NiFi ログに記録されます。そうでない場合は、 NiFi 全体でデバッグログが有効になっている場合にのみログが記録されます。このオプションの目的は、ユーザーがデバッグログをオンにしなくても、失敗した操作をデバッグできるようにすることです。

リレーションシップ

名前

説明

errors

(Elasticsearch内で)「エラー」となった Elasticsearch ドキュメントに対応する記録/フローファイルはここにルーティングされます。

failure

サーバーの可用性とは無関係な理由で失敗したすべてのフローファイルは、この関係に移動します。

original

リクエストに失敗せずにElasticsearchに送信されたすべてのフローファイルは、このリレーションシップに送られます。

retry

サーバー/クラスタの可用性のために失敗したすべてのフローファイルは、この関係に移動します。

successful

Elasticsearch ドキュメントに対応する記録/フローファイルのうち、(Elasticsearch 内で)「エラー」にならなかったものはここにルーティングされます。

属性の書き込み

名前

説明

elasticsearch.put.error

FlowFile のパース、パースされたドキュメントの Elasticsearch への送信、または Elasticsearch のレスポンスのパースに問題がある場合のエラーメッセージです。

elasticsearch.bulk.error

Elasticsearch でのドキュメント処理中にエラーが発生した場合の _bulk レスポンス。

こちらもご覧ください