2015-12-08 29 views
3

我正在使用DAS 3.0.0作爲WSO2AM_STATS_DB用WSO2 API Manager 1.9.0/1.9.1與Oracle的替代使用DAM 3.0.0。WSO2 DAS 3.0.0與API管理器1.9.0不起作用

我下面http://blog.rukspot.com/2015/09/publishing-apim-runtime-statistics-to.html

我可以看到在數據資源管理器表DAS的碳儀表板數據ORG_WSO2_APIMGT_STATISTICS_REQUEST和ORG_WSO2_APIMGT_STATISTICS_RESPONSE。

但是數據不存儲在Oracle中。因此,我無法在AM的發佈商中看到統計信息。它一直在說「數據發佈已啓用,生成一些流量以查看統計信息」。

我越來越日誌以下錯誤:

[2015-12-08 13:00:00,022] INFO {org.wso2.carbon.analytics.spark.core.AnalyticsT 
ask} - Executing the schedule task for: APIM_STAT_script for tenant id: -1234 
[2015-12-08 13:00:00,037] INFO {org.wso2.carbon.analytics.spark.core.AnalyticsT 
ask} - Executing the schedule task for: Throttle_script for tenant id: -1234 
Exception in thread "dag-scheduler-event-loop" java.lang.NoClassDefFoundError: o 
rg/xerial/snappy/SnappyInputStream 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Class.java:274) 
     at org.apache.spark.io.CompressionCodec$.createCodec(CompressionCodec.sc 
ala:66) 
     at org.apache.spark.io.CompressionCodec$.createCodec(CompressionCodec.sc 
ala:60) 
     at org.apache.spark.broadcast.TorrentBroadcast.org$apache$spark$broadcas 
t$TorrentBroadcast$$setConf(TorrentBroadcast.scala:73) 
     at org.apache.spark.broadcast.TorrentBroadcast.<init>(TorrentBroadcast.s 
cala:80) 
     at org.apache.spark.broadcast.TorrentBroadcastFactory.newBroadcast(Torre 
ntBroadcastFactory.scala:34) 
     at org.apache.spark.broadcast.BroadcastManager.newBroadcast(BroadcastMan 
ager.scala:62) 
     at org.apache.spark.SparkContext.broadcast(SparkContext.scala:1291) 
     at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DA 
GScheduler$$submitMissingTasks(DAGScheduler.scala:874) 
     at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DA 
GScheduler$$submitStage(DAGScheduler.scala:815) 
     at org.apache.spark.scheduler.DAGScheduler.handleJobSubmitted(DAGSchedul 
er.scala:799) 
     at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAG 
Scheduler.scala:1426) 
     at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAG 
Scheduler.scala:1418) 
     at org.apache.spark.util.EventLoop$$anon$1.run(EventLoop.scala:48) 
Caused by: java.lang.ClassNotFoundException: org.xerial.snappy.SnappyInputStream 
cannot be found by spark-core_2.10_1.4.1.wso2v1 
     at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(Bundl 
eLoader.java:501) 
     at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader. 
java:421) 
     at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader. 
java:412) 
     at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(De 
faultClassLoader.java:107) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
     ... 15 more 

我缺少的東西? 任何人都可以請幫我找出這個問題嗎?

在此先感謝。

回答

4

將所有庫(jar)移動到項目的/ WEB-INF/lib中。現在/ WEB-INF/lib下的所有庫/ jar都將在classpath下。

使用snappy-java jar文件,它會按你的意願工作。

+3

非常感謝。你節省了我的一天。我必須在/ repository/components/lib目錄中添加snappy-java-1.0.5-M1.jar文件,現在它工作的很好。 –

+0

我認爲你應該總是使用庫的最新jar文件。 snappy-java-1.0.5-M1.jar是過時的jar文件。它有很多問題。 –