我正在配置WSO2 EI分析概要文件,以使用PostgreSQL而不是H2数据库。
我更改了下列文件:
分析-Dataources.xml,
master-master ources.xml,
metrics-datasources.xml
在\wso2\analytics\conf\datasources.中我还执行了脚本,以便在dbscript中创建数据库。脚本只为度量和主表生成表,但它们不创建用于分析的表。
无论如何,当我运行分析服务器时,我有一些错误,如下所示:
Failed to perform Category Drilldown on table: org_wso2_esb_analytics_stream_MediatorStatPerMinute: Error while connecting to the remote service. Connection refused (Connection refused) {JAGGERY.controllers.apis.eianalytics:jag}
TID: [-1234] [] [2017-11-06 16:43:00,262] ERROR {org.wso2.carbon.databridge.core.internal.queue.QueueWorker} - Dropping wrongly formatted event sent for -1234 {org.wso2.carbon.databridge.core.internal.queue.QueueWorker}
org.wso2.carbon.databridge.core.exception.EventConversionException: Error when converting org.wso2.esb.analytics.stream.FlowEntry:1.0.0 of event bundle with events 1
at org.wso2.carbon.databridge.receiver.thrift.converter.ThriftEventConverter.createEventList(ThriftEventConverter.java:181)
at org.wso2.carbon.databridge.receiver.thrift.converter.ThriftEventConverter.toEventList(ThriftEventConverter.java:90)
at org.wso2.carbon.databridge.core.internal.queue.QueueWorker.run(QueueWorker.java:73)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.wso2.carbon.databridge.core.exception.EventConversionException: No StreamDefinition for streamId org.wso2.esb.analytics.stream.FlowEntry:1.0.0 present in cache
at org.wso2.carbon.databridge.receiver.thrift.converter.ThriftEventConverter.createEventList(ThriftEventConverter.java:166)
... 7 more似乎缺少一些数据库表,但我不知道如何创建它们.
当我在默认配置中使用H2数据库时,不存在这些错误。有人能帮我吗?
发布于 2017-11-07 11:36:13
我解决了问题。这是JDBC驱动程序的问题。
对于JDK1.8,有必要使用PostgreSQL JDBC 42.1.4。
我希望它能对某人有用。
https://stackoverflow.com/questions/47140701
复制相似问题