Pentaho报表输出远程执行
问题描述:
我有一个在CentOS机器上运行的pentaho BI服务器(osapp),然后是在另一个CentOS机器(osdb)中使用存储库,分段和数据wharehouse运行MySQL数据库。我从Windows PC运行勺子。 我创建了一个转换来运行Pentaho报告,每8小时自动导出到PDF并通过电子邮件发送。 如果我在我的勺子中运行转换,它按预期运行,但使用我在BI服务器上设置的carte服务器(osapp)在Pentaho Reporting Output步骤中出现错误,没有日志。我看不到错误的详细信息。 如果我使用Pan.sh运行它,是一样的,但我得到这样的输出:Pentaho报表输出远程执行
sh pan.sh -rep=mitbirep -user=admin -pass=admin -trans="HighRisk Containers" -level=basic
INFO 02-01 18:56:06,187 - Pan - Logging is at level : Basic logging
INFO 02-01 18:56:06,188 - Pan - Start of run.
INFO 02-01 18:56:06,284 - RepositoriesMeta - Reading repositories XML file: /opt/pentaho/data-integration/repositories.xml
INFO 02-01 18:56:08,144 - HighRisk Containers - Dispatching started for transformation [HighRisk Containers]
INFO 02-01 18:56:08,241 - Data Grid - Finished processing (I=0, O=0, R=0, W=1, U=0, E=0)
INFO 02-01 18:56:08,594 - LibBase 1.2.2.13667 started.
INFO 02-01 18:56:08,840 - LibLoader 1.2.2.13667 started.
INFO 02-01 18:56:08,946 - LibFonts 1.2.3.13670 started.
INFO 02-01 18:56:09,008 - LibSerializer 1.2.2.13667 started.
INFO 02-01 18:56:09,169 - LibFormula 1.2.3.13667 started.
INFO 02-01 18:56:09,321 - LibFormat 1.2.3.13667 started.
INFO 02-01 18:56:09,384 - LibXML 1.2.2.13670 started.
INFO 02-01 18:56:09,439 - LibRepository 1.2.3.14252 started.
INFO 02-01 18:56:09,499 - LibDocBundle 1.2.3.14252 started.
WARN 02-01 18:56:10,312 - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/opt/pentaho/data-integration/libext/reporting/ehcache-core-2.0.1.jar!/ehcache-failsafe.xml
INFO 02-01 18:56:12,674 - Completed font registration.
INFO 02-01 18:56:12,735 - Completed font registration.
INFO 02-01 18:56:12,797 - Completed font registration.
INFO 02-01 18:56:17,983 - Pentaho Reporting Engine Classic 3.8.2-GA.14313 started.
WARN 02-01 18:56:18,673 - Unknown tag <http://jfreereport.sourceforge.net/namespaces/datasources/sql:query-definitions>: Start to ignore this element and all of its childs. [Location: Line=16 Column=27]
WARN 02-01 18:56:20,149 - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/opt/pentaho/data-integration/libext/reporting/ehcache-core-2.0.1.jar!/ehcache-failsafe.xml
WARN 02-01 18:56:20,208 - Creating a new instance of CacheManager using the diskStorePath "/tmp" which is already used by an existing CacheManager.
The source of the configuration was net.sf.ehcache.[email protected]463684dc.
The diskStore path for this CacheManager will be set to /tmp/ehcache_auto_created_1357170980208.
To avoid this warning consider using the CacheManager factory methods to create a singleton CacheManager or specifying a separate ehcache configuration (ehcache.xml) for each CacheManager instance.
INFO 02-01 18:56:20,326 - RepositoriesMeta - Reading repositories XML file: /opt/pentaho/data-integration/repositories.xml
ERROR 02-01 18:56:20,337 - 2132298740: Report processing failed.
ERROR 02-01 18:56:20,340 - Writing PDF failed.
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException: Unable to load Kettle-Transformation
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.KettleTransFromFileProducer.loadTransformation(KettleTransFromFileProducer.java:145)
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.AbstractKettleTransformationProducer.performQuery(AbstractKettleTransformationProducer.java:313)
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.KettleDataFactory.queryData(KettleDataFactory.java:134)
at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryStatic(CompoundDataFactory.java:135)
at org.pentaho.reporting.engine.classic.core.cache.CachingDataFactory.queryInternal(CachingDataFactory.java:421)
at org.pentaho.reporting.engine.classic.core.cache.CachingDataFactory.queryStatic(CachingDataFactory.java:183)
at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryStatic(CompoundDataFactory.java:130)
at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryData(CompoundDataFactory.java:85)
at org.pentaho.reporting.engine.classic.core.states.datarow.ReportDataRow.createDataRow(ReportDataRow.java:97)
at org.pentaho.reporting.engine.classic.core.states.datarow.DefaultFlowController.performQuery(DefaultFlowController.java:188)
at org.pentaho.reporting.engine.classic.core.states.process.ProcessState.initializeForMasterReport(ProcessState.java:287)
at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.prepareReportProcessing(AbstractReportProcessor.java:469)
at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.processReport(AbstractReportProcessor.java:1522)
at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:122)
at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:70)
at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:154)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processReport(PentahoReportingOutput.java:219)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processRow(PentahoReportingOutput.java:108)
at org.pentaho.di.trans.step.RunThread.run(RunThread.java:40)
at java.lang.Thread.run(Thread.java:722)
ParentException:
org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException: Unable to create key: No loader was able to handle the given key data: C:\Users\mocando.PANAMA\Documents\Infrastructure\ktrs\High Risk Containers.ktr
at org.pentaho.reporting.libraries.resourceloader.DefaultResourceManagerBackend.createKey(DefaultResourceManagerBackend.java:76)
at org.pentaho.reporting.libraries.docbundle.BundleResourceManagerBackend.createKey(BundleResourceManagerBackend.java:88)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.createKey(ResourceManager.java:146)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.createKey(ResourceManager.java:132)
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.KettleTransFromFileProducer.createKey(KettleTransFromFileProducer.java:89)
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.KettleTransFromFileProducer.loadTransformation(KettleTransFromFileProducer.java:124)
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.AbstractKettleTransformationProducer.performQuery(AbstractKettleTransformationProducer.java:313)
at org.pentaho.reporting.engine.classic.extensions.datasources.kettle.KettleDataFactory.queryData(KettleDataFactory.java:134)
at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryStatic(CompoundDataFactory.java:135)
at org.pentaho.reporting.engine.classic.core.cache.CachingDataFactory.queryInternal(CachingDataFactory.java:421)
at org.pentaho.reporting.engine.classic.core.cache.CachingDataFactory.queryStatic(CachingDataFactory.java:183)
at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryStatic(CompoundDataFactory.java:130)
at org.pentaho.reporting.engine.classic.core.CompoundDataFactory.queryData(CompoundDataFactory.java:85)
at org.pentaho.reporting.engine.classic.core.states.datarow.ReportDataRow.createDataRow(ReportDataRow.java:97)
at org.pentaho.reporting.engine.classic.core.states.datarow.DefaultFlowController.performQuery(DefaultFlowController.java:188)
at org.pentaho.reporting.engine.classic.core.states.process.ProcessState.initializeForMasterReport(ProcessState.java:287)
at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.prepareReportProcessing(AbstractReportProcessor.java:469)
at org.pentaho.reporting.engine.classic.core.layout.output.AbstractReportProcessor.processReport(AbstractReportProcessor.java:1522)
at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:122)
at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:70)
at org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PdfReportUtil.createPDF(PdfReportUtil.java:154)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processReport(PentahoReportingOutput.java:219)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processRow(PentahoReportingOutput.java:108)
at org.pentaho.di.trans.step.RunThread.run(RunThread.java:40)
at java.lang.Thread.run(Thread.java:722)
log4j:WARN No appenders could be found for logger (org.pentaho.di).
log4j:WARN Please initialize the log4j system properly.
[[email protected] data-integration]#
[[email protected] data-integration]# sh pan.sh -rep=mitbirep -user=admin -pass=admin -trans="CMD Schedule" -level=basic
INFO 02-01 19:07:42,067 - Pan - Logging is at level : Basic logging
INFO 02-01 19:07:42,069 - Pan - Start of run.
INFO 02-01 19:07:42,196 - RepositoriesMeta - Reading repositories XML file: /opt/pentaho/data-integration/repositories.xml
INFO 02-01 19:07:44,686 - CMD Schedule - Dispatching started for transformation [CMD Schedule]
INFO 02-01 19:07:44,792 - Data Grid - Finished processing (I=0, O=0, R=0, W=1, U=0, E=0)
INFO 02-01 19:07:45,275 - LibBase 1.2.2.13667 started.
INFO 02-01 19:07:45,606 - LibLoader 1.2.2.13667 started.
INFO 02-01 19:07:45,730 - LibFonts 1.2.3.13670 started.
INFO 02-01 19:07:45,811 - LibSerializer 1.2.2.13667 started.
INFO 02-01 19:07:46,019 - LibFormula 1.2.3.13667 started.
INFO 02-01 19:07:46,221 - LibFormat 1.2.3.13667 started.
INFO 02-01 19:07:46,311 - LibXML 1.2.2.13670 started.
INFO 02-01 19:07:46,405 - LibRepository 1.2.3.14252 started.
INFO 02-01 19:07:46,494 - LibDocBundle 1.2.3.14252 started.
WARN 02-01 19:07:47,561 - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/opt/pentaho/data-integration/libext/reporting/ehcache-core-2.0.1.jar!/ehcache-failsafe.xml
INFO 02-01 19:07:51,016 - Completed font registration.
INFO 02-01 19:07:51,114 - Completed font registration.
INFO 02-01 19:07:51,234 - Completed font registration.
INFO 02-01 19:07:53,342 - New update(s) found: 2.4.7 [http://www.terracotta.org/confluence/display/release/Release+Notes+Ehcache+Core+2.4]. Please check http://ehcache.org for the latest version.
INFO 02-01 19:07:59,056 - Pentaho Reporting Engine Classic 3.8.2-GA.14313 started.
ERROR 02-01 19:07:59,068 - Pentaho Reporting Output - Unexpected error
ERROR 02-01 19:07:59,079 - Pentaho Reporting Output - org.pentaho.di.core.exception.KettleException:
There was an unexpected error processing report '/var/lib/tomcat6/webapps/ROOT/CMD_schedule.prpt' to produce file '/var/lib/tomcat6/webapps/ROOT/cmd_schedule.pdf' with processor: PDF.
Failed to open URL connection
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processReport(PentahoReportingOutput.java:239)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processRow(PentahoReportingOutput.java:108)
at org.pentaho.di.trans.step.RunThread.run(RunThread.java:40)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.pentaho.reporting.libraries.resourceloader.ResourceLoadingException: Failed to open URL connection
at org.pentaho.reporting.libraries.resourceloader.loader.URLResourceData.getResourceAsStream(URLResourceData.java:128)
at org.pentaho.reporting.libraries.resourceloader.loader.AbstractResourceData.getResource(AbstractResourceData.java:101)
at org.pentaho.reporting.libraries.docbundle.bundleloader.ZipResourceBundleLoader.loadBundle(ZipResourceBundleLoader.java:81)
at org.pentaho.reporting.libraries.resourceloader.DefaultResourceManagerBackend.loadResourceBundle(DefaultResourceManagerBackend.java:389)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.loadResourceBundle(ResourceManager.java:262)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.load(ResourceManager.java:284)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.create(ResourceManager.java:405)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.create(ResourceManager.java:370)
at org.pentaho.reporting.libraries.resourceloader.ResourceManager.createDirectly(ResourceManager.java:207)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.loadMasterReport(PentahoReportingOutput.java:144)
at org.pentaho.di.trans.steps.pentahoreporting.PentahoReportingOutput.processReport(PentahoReportingOutput.java:160)
... 3 more
INFO 02-01 19:07:59,081 - Pentaho Reporting Output - Finished processing (I=0, O=0, R=1, W=0, U=0, E=1)
INFO 02-01 19:07:59,081 - CMD Schedule - CMD Schedule
INFO 02-01 19:07:59,081 - CMD Schedule - CMD Schedule
INFO 02-01 19:07:59,162 - Pan - Finished!
INFO 02-01 19:07:59,163 - Pan - Start=2013/01/02 19:07:42.070, Stop=2013/01/02 19:07:59.162
INFO 02-01 19:07:59,163 - Pan - Processing ended after 17 seconds.
任何想法,我可以怎样做到这一点?
感谢
答
这个问题似乎是潘是不是在找你指出它与资源库的变换。我没那么熟悉这个机制,但如果你只需要得到的东西的工作,你可以改为推出泛用像这样
pan.sh -file='/path/to/my_transform.ktr'
指定水壶转换文件这通常是我如何执行变换和它的工作原理完美。
+0
我按照建议执行KTR,并得到完全相同的结果。看起来数据工厂应该事先定义,但我无法弄清楚。还有什么想法?谢谢 –
更新:我修改了报告中的数据源,现在没有给我任何数据。报告为空,我从pan.sh中得到这个错误: 弃用的行为:没有一个数据工厂能够处理查询'HighRisk Containers'。返回空表模型,而不是努力工作。 –