如何在Carte上运行的Pentaho Kettle Job中使用变量进行数据库日志连接名称?

时间:2018-05-15 23:32:36

标签: logging pentaho kettle pentaho-spoon

我想参数化要使用的(预定义的和参数化的)日志数据库连接,例如: data.import.log.db=LOG_DBenter image description here

但我无法使用作业参数data.import.log.db或在调用父作业中设置变量data.import.log.db

我看到的唯一方法是在kettle.properties中设置变量,或者从命令行设置变量。但是如果作业在Carte中执行,我希望调用者决定使用哪个日志连接 - 有时调用者决定不记录(空变量)。我是否遗漏了有关如何将此变量移交给作业日志连接的内容?

提前感谢建设性的提示和解释。

- 编辑:使用PDI CE 8.0.0-28。

2 个答案:

答案 0 :(得分:1)

您无法参数化连接名称。

您可以参数化其属性(例如主机,端口,用户名和密码),但不能连接名称本身。

答案 1 :(得分:0)

恐怕你做不到。日志参数在进程的早期定义,远在读取作业/转换的变量之前。

您可以做的是登录tmp表,让调用者决定是否必须复制表以及直接转换的位置。

此方法的缺点是并发作业。然后,副本转换需要根据频道号做出决定。