我有3个流文件,它们来自同一处理器。
FF1-> {a:1,b:2,c:'name'}
FF2-> {a:1,b:5,c:'fruit'}
FF3-> {a:2,b:3,c:'abc'}
通过使用MergeContent Processor,我可以合并所有流文件,但是我的要求是在Key上合并流文件。
如果我与键'a'一起使用,则预期输出:
FF1-> [{a:1,b:2,c:'name'},{a:1,b:5,c:'fruit'}]
FF2-> [{a:2,b:3,c:'abc'}]
答案 0 :(得分:4)
MergeContent具有一个称为“ Correlation Attribute”的属性,该属性是流文件属性的名称,该属性将用于将具有相同属性值的流文件组合在一起(示例中的键)。
您将需要使用诸如EvaluateJsonPath,ExtractText或某些自定义脚本处理器之类的字段将字段“ a”的值提取到流文件属性中,然后进入诸如“ my.key”之类的属性,然后将“ my.key”放入“关联属性”属性。