Я потратил несколько часов, пытаясь понять язык выражений, чтобы получить содержимое потока.Как получить контент?
Есть простой тест потока, чтобы попытаться узнать 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}
Чтобы добавить это, руководство Apache NiFi Expression Language (EL) описывает все функции EL и как их использовать: https://nifi.apache.org/docs/nifi-docs/html/expression-language -guide.html – JDP10101
@ Bryan вы можете немного разработать его, пожалуйста, как взять все содержимое в атрибуте, а также рассказать, как вернуть его снова. Пожалуйста, ответьте на ваш вопрос. Спасибо –
Если вы используете процессор ExtractText и добавляете определяемый пользователем свойство, имя определяемого пользователем свойства станет атрибутом файла потока, а значение свойства - это регулярное выражение для применения к контенту. Итак, foo =. * Выберет весь контент и поместит его в атрибут foo. –