4

我使用“+”按钮在“updateAttribute”处理器中添加了一些自定义属性。例如:我声明了一个属性“DBConnectionURL”,并将其值设为“jdbc:mysql://localhost:3306/test”。然后,在“DBCPConnectionPool”服务控制器中,我简单地将值“${DBConnectionURL}”用于“数据库连接 URL”属性。但是,我手动给出了“DBConnectionURL”属性的值。我想要一种可以从文件中动态提供值的方法,这样我只需要更改文件中的值,并且“DBConnectionURL”的值会根据动态变化关于文件中存在的值。有没有办法做到这一点?

4

1 回答 1

3

里沙布,

您必须使用 nifi 变量注册表。

在 conf/nifi.properties 中,您可以在其中配置以下配置以动态更新数据流中的值。

nifi.variable.registry.properties=./dynamic.properties

您可以在该文件 dynamic.properties 中提供变量,它应该出现在 conf 目录中。

例如,如果 dynamic.properties 文件包含以下值

DBCPURL= jdbc://<host>:<port>

您可以通过使用在数据流中使用它${DBCPURL}

注意:如果更改 conf/nifi.properties 中的任何配置,则应重新启动 nifi 服务。否则,您的更改在数据流中不起作用。

如果它对您有用,请随时接受它的答案。

于 2018-04-05T12:04:59.447 回答