我花了几个小时试图找出表达式语言以获取流文件内容。
有一个简单的测试流程来尝试学习我所拥有的Nifi: GetMongo - > LogAttributes - >放松弛
-----------------------LOG1-----------------------
Standard FlowFile Attributes
Key: 'entryDate'
Value: 'Wed Sep 28 23:58:36 GMT 2016'
Key: 'lineageStartDate'
Value: 'Wed Sep 28 23:58:36 GMT 2016'
Key: 'fileSize'
Value: '70'
FlowFile Attribute Map Content
Key: 'filename'
Value: '43546945658800'
Key: 'path'
Value: './'
Key: 'uuid'
Value: 'd1e10623-0e90-44af-a620-6bed9776ed62'
-----------------------LOG1-----------------------
{ "_id" : { "$oid" : "57ec27ec35a0759d54fb465d" }, "keyA" : "valueA" }
在测试的putSlack表达式中我尝试过:
${flowfile.content}
${message}
${payload}
${msg}
${flowfile-content}
${content}
答案 0 :(得分:8)
没有表达式语言可以访问流文件的内容。特意以非常不同的方式存储属性和内容,以便于移动可能代表大有效载荷的流文件。表达式语言仅对属性起作用。
ExtractText处理器可用于将流文件的整个内容提取到属性中,请记住,只有当您知道内容在内存中没有问题时才应该这样做。