PutElasticsearchJson 2025.5.31.15¶
捆绑包¶
org.apache.nifi | nifi-elasticsearch-restapi-nar
描述¶
使用官方 Elastic REST 客户端库的 Elasticsearch 放置处理器。每个 FlowFile 都被视为要发送到 Elasticsearch _bulk API 的文档。可以将多个 FlowFiles 批处理到每个发送到 Elasticsearch 的请求。
输入要求¶
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”,则此属性可能会留空或计算为空值,在这种情况下,文档的标识符将由 Elasticsearch 自动生成。对于所有其他索引操作,此属性的计算结果必须为非空值。 |
put-es-json-script |
文档更新/更新插入的脚本。仅适用于更新/更新插入操作。必须可以解析为 JSON 对象。如果留空,则 FlowFile 内容将用于文档更新/更新插入 |
put-es-json-scripted-upsert |
是否将 scripted_upsert 标志添加到更新插入操作中。如果为 true,则无论文档是否存在,都强制 Elasticsearch 执行脚本,默认值为 false。如果提供的更新插入文档(来自 FlowFile 内容)为空,请务必将客户端服务控制器服务的“Suppress Null/Empty Values”设置为“Never Suppress”,否则发送到 Elasticsearch 的请求中将不包含“upsert”文档,该操作不会创建新文档供脚本执行,最终将导致“not_found”错误 |
put-es-not_found-is-error |
如果为 true,“not_found”Elasticsearch 文档关联记录将路由到“successful”关系,否则将路由到“errors”关系。如果输出错误响应为“true”,则来自 Elasticsearch 的“not_found”响应将发送到 error_responses 关系。 |
put-es-output-error-responses |
如果启用了此属性,则来自 Elasticsearch 且标记为“error”的响应消息将输出到“error_responses”关系。这不会影响 FlowFile 向“successful”或“errors”关系的输出 |
put-es-record-batch-size |
单批发送的 FlowFiles 的首选数量 |
put-es-record-index-op |
用于索引的操作的类型(创建、删除、索引、更新、更新插入) |
put-es-record-log-error-responses |
如果启用了此属性,则将在错误日志级别将错误记录到 NiFi 日志中。否则,只有在 NiFi 上整体启用调试日志记录时,才会记录错误。此选项的目的是,使用户能够在不必打开调试日志记录的情况下调试失败的操作。 |
关系¶
名称 |
描述 |
---|---|
errors |
与导致“error”(在 Elasticsearch 中)的 Elasticsearch 文档对应的记录/FlowFile 将路由到此处。 |
failure |
所有因与服务器可用性无关的原因而失败的 FlowFile 都将转到此关系。 |
original |
在没有请求失败的情况下发送到 Elasticsearch 的所有 FlowFile 都将转到此关系。 |
retry |
所有因服务器/集群可用性而失败的 Flowfile 都将转到此关系。 |
successful |
与未导致“error”(在 Elasticsearch 中)的 Elasticsearch 文档对应的记录/FlowFile 将路由到此处。 |
写入属性¶
名称 |
描述 |
---|---|
elasticsearch.put.error |
如果在解析 FlowFile、将已解析的文档发送到 Elasticsearch 或解析 Elasticsearch 响应时出现问题,则显示此错误消息 |
elasticsearch.bulk.error |
如果在 Elasticsearch 中处理文档时出现错误,则返回此 _bulk 响应。 |