NIFI使用python和Excutescript从Jason生成多个流文件到属性

时间:2019-01-24 04:29:13

标签: apache-nifi

所以我的jason文件包含多个配置,但是我想从该jason通用流文件,并将所有配置都设置为属性,我可以使用此脚本还是可以怎么做

这是我的代码,它在originalFlowFile = session.write(originalFlowFile,ModJSON())上报错 有人可以帮助我解释我的代码发生什么情况

和我想从流程文件中读取的敏锐的购物对象 我想要的结果是2个流文件包含属性shop_name和shop_id

import json
import java.io
from org.apache.commons.io import IOUtils
from org.apache.nifi.processor.io import StreamCallback

flowFile = session.get()
# text = IOUtils.toString(inputStream, StandardCharsets.UTF_8)
# obj = json.loads(text)
flowfiles_list = []

# outputStream.write(bytearray(json.dumps(obj.keys(), indent=4).encode('utf-8')))
shopobject = [{"shop_name": "Animo", "shop_id": "12344"}, {"shop_name": "Sennheiser-TH", "shop_id": "8991604793"}]

for obj in shopobject:
    newFlowFile = session.create(flowFile)
    newFlowFile = session.putAttribute(newFlowFile, "shop_name", obj['shop_name'])
    newFlowFile = session.putAttribute(newFlowFile, "google", obj['shop_id'])
    flowfiles_list.append(flowFile)


session.transfer(flowfiles_list, REL_SUCCESS)
session.remove(flowFile)

0 个答案:

没有答案