NiFi:将属性合并到Flow文件的JSON内容中(不覆盖整个流文件)

pap*_*elr 4 json apache-nifi

我有一个创建一些新属性/内容的流程.我想从流文件中获取一个属性,并将其添加到文件的JSON内容中.

我可以使用AttributesToJSON,但这只是覆盖文件内容.

我的流程示例如下:

在此输入图像描述

UpdateAttribute该属性列表添加当前时间,然后AttributestoJSON添加到实际的JSON的属性,但它也覆盖了整个流程文件的内容.我试图解决这个问题MergeRecord,但我不能将这两个文件合并回来(使用CurrentTime相关属性名称).

有没有比这更好的了?在MergeRecord刚刚想出了一个错误.(也不知道如何配置RecordReader/Writer,因为我想保留JSON中的所有内容).

Bry*_*nde 9

假设您在UpdateAttribute中设置currentTime,请使用UpdateRecord并添加一个属性,其中名称是您要更新的字段,如"/ currentTime",该值是对该属性的表达式语言引用,如$ {currentTime}.

  • JsonTreeReader,如果你想从json指定特定的路径,你只会使用JsonPathReader,树阅读器只是读取所有内容 (2认同)