JSLTTransformJSON Processor
描述
将 JSLT 转换应用于 FlowFile JSON 负载。 使用转换后的内容创建一个新的 FlowFile,并将其路由到“成功”关系。 如果 JSLT 转换失败,原始 FlowFile 将路由到“失败”关系。
标签
属性
| 名称 | 默认值 | 可选值 | 描述 |
|---|---|---|---|
| JSLT Transformation | | 用于 JSON 数据转换的 JSLT 转换。任何存在的 Lynxus Expression Language 将首先被求值以获取要应用的最终转换。JSLT 教程提供了支持的表达式的概述:https://github.com/schibsted/jslt/blob/master/tutorial.md 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Input Format | FLOW_FILE |
| 指定包含一个或多个 JSON 元素的 FlowFile 内容的预期格式 |
| Transformation Strategy | EACH_OBJECT |
| 是否将 JSLT 转换应用于整个 FlowFile 内容或根级数组中的每个 JSON 对象 |
| Pretty Print | false |
| 将漂亮的打印格式应用于 JSLT 转换的输出 |
| Transform Cache Size | 1 | 编译 JSLT 转换可能相当昂贵。理想情况下,这应该只执行一次。但是,如果转换中使用了 Expression Language,我们可能需要为每个 FlowFile 使用新的转换。此值控制我们在内存中缓存多少个这样的转换,以避免每次都必须编译转换。 | |
| Transform Result Filter | . != null and . != {} and . != [] | 使用 JSLT 表达式过滤输出 JSON 结果。此属性支持更改默认过滤器,默认过滤器从输出 JSON 中移除具有 null 值的 JSON 对象、空对象和空数组。此 JSLT 必须对每个要包含的 JSON 对象返回 true,对每个要移除的对象返回 false。使用过滤值 "true" 可禁用过滤。 |
关系 (Relationships)
| 名称 | 描述 | 自动终止 |
|---|---|---|
failure | 如果 FlowFile 由于任何原因处理失败(例如,FlowFile 不是有效的 JSON),它将被路由到此关系 | 否 |
success | 具有转换内容的 FlowFile 将被路由到此关系 | 否 |
写入的 FlowFile 属性
| 名称 | 描述 |
|---|---|
mime.type | 始终设置为 application/json |
状态管理
该组件不存储状态。
受限 (Restricted)
该组件不受限。
输入要求
该组件要求有传入连接。
系统资源考量
| 资源 | 描述 |
|---|---|
| MEMORY | An instance of this component can cause high usage of this system resource. Multiple instances or high concurrency settings may result a degradation of performance. |