Чтение внешних свойств в процессоре executeScript - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть внешний файл свойств, настроенный в nifi.properties в nifi.variable.registry.properties.Я хочу прочитать это свойство в процессоре executeScript в python.Я использовал str(context.getProperty('URL')), но он не работает

1 Ответ

3 голосов
/ 08 апреля 2019

https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-scripting-nar/1.9.1/org.apache.nifi.processors.script.ExecuteScript/index.html


  • объявляет динамическое свойство для процессора ExecuteScript. например VAR_URL = ${URL}
  • тогда внутри скрипта вы можете получить доступ к этому свойству: VAR_URL.evaluateAttributeExpressions(flowFile).getValue()

или если вы не хотите объявлять свойство для вашего процессора и уверены, что свойство где-то объявлено, вы можете использовать следующий код:

context.newPropertyValue( '${URL}' ).evaluateAttributeExpressions().getValue()

Примечание: не используйте двойные кавычки вокруг ${URL}, потому что это выражение будет обработано как строка-шпунт перед вычислением выражения nifi ...

...