NIFI使用Groovy访问内容声明标识符

时间:2019-03-07 01:18:30

标签: apache-nifi

每次过程运行时,我都需要生成一个唯一的ID。我的过程从GetSFTP处理器开始。

我当时正在考虑使用flowfile的内容声明标识符。

如何使用Groovy进行访问?预先感谢!

Flow File

1 个答案:

答案 0 :(得分:2)

通常,您可以依赖于流文件uuid属性的唯一性。系统中的每个流文件都会在创建时生成此文件,因此来自GetSFTP的流文件将具有填充的且唯一的此属性。要从Groovy(在脚本或自定义处理器中)访问uuid属性,请使用代码flowfile.uuidflowfile.getAttribute('uuid')

内容声明标识符绝对是不是唯一-它是对文件系统(或其他存储介质,如果已配置)上特定位置的引用,引用流文件的内容字节。许多流文件可以具有相同的内容声明标识符。

您还可以使用Apache NiFi表达式语言中的UUID()函数生成唯一标识符,并根据需要使用插值将其放入属性或内容中(即${UUID()})。