在executeScript处理器中读取外部属性

时间:2019-04-08 11:40:22

标签: apache-nifi

我在nifi.variable.registry.properties的nifi.properties中配置了一个外部属性文件。我想在python的executeScript处理器中读取此属性。我用过 str(context.getProperty('URL')),但无效

1 个答案:

答案 0 :(得分:3)

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()
  

注意:请勿在{{1​​}}周围使用双引号,因为在评估nifi表达式之前,该表达式将被作为常规字符串处理。