简介:
我在一个叫Jedox的工具上工作。在这个工具中有一个ETL。这个ETL可以运行作业(作业允许从ETL执行多个步骤,我所说的步骤是指对表的一组操作(大多数情况下))。有些作业可以从ETL连续启动不同的步骤,但是还有另一种类型作业不能运行脚本,我试着运行一个使用Groovy语言的作业,这两种语言有许多相似之处。
内容:
在运行过程中,ETL在控制台上显示消息日志。我也可以自己打印一些消息。例如LOG.info("hello")
将在ETL Jedox控制台中打印Hello
。LOG是来自类ETLLogger的对象。它是Jedox库中的一个特定类。
问题:
1.使用此记录器,如何在作业运行期间打印消息日志?
1.使用另一个记录器(例如来自log4j),是否可以在过程中打印所有日志消息?
目的:
我希望这些日志消息打印所有的警告发生在工作结束时的工作,因为jedox控制台是非常小故障,我不能检索体面的数据从一个简单的复制和粘贴。此外,如果只是复制/粘贴所有的日志,我只选择警告消息手动。如果有可能,我想写的日志,我感兴趣的文件,这将是伟大的!
**额外收获:**这是Jedox ETL控制台的图像。x1c 0d1x
2条答案
按热度按时间tv6aics11#
Jedox ETL - Integrator自带一个API,其中的logger是一个附加类。如果您正在使用Groovy作业环境,那么您可以完全访问所有的类和方法。在您的情况下,State类将有助于获取当前作业/子作业的所有警告或错误。您可以将状态项写入一个单独的文件或将它们收集到一个变量中以供将来使用。目标可以是一个文件、数据库,甚至是一个jedox olap多维数据集。
Groovy脚本编写API的起点:https://knowledgebase.jedox.com/integration/integrator-scripting-api.htm
以下是所有Jedox ETL类的API文档:https://software.jedox.com/doc/2022_2/jedox_integrator_scripting_api_doc_2022_2/com/jedox/etl/components/scriptapi/package-summary.html
pjngdqdw2#
我如何将所有这些日志存储在一个文件中?在Jedox中,你可以创建一个新的File-Load,它可以由'main' groovy作业触发。一个很好的起点是:https://knowledgebase.jedox.com/integration/loads/file-load.htm