Чтобы решить эту проблему, вы можете использовать процессор ExecuteScript
или ExecuteGroovyScript
.Следующий скрипт отлично справится с этой задачей.Хотя написано на Groovy.
flowFile = session.get()
if (!flowFile)
return
filename = flowFile.getAttribute('filename')
splits = filename.split('_')
attrsMap = [:]
splits.eachWithIndex {
split, index -> attrsMap.put("ATTR" + index, split)
}
attrsMap.each{ k, v -> println "${k}:${v}" }
flowFile = session.putAllAttributes(flowFile, attrsMap)
session.transfer(flowFile, REL_SUCCESS)
Скриншоты