我已经配置了API Manager 2.0.0& API Manager Analytics Pack使用MySQL数据库。
对于每个服务器,都存在WSO2AM_STATS_DB。我在MySQL服务器上给出了这些不同的名字。我还将我的数据源指向master-datasources.xml(对于APIM)& stats-datasources.xml(用于分析)到相关数据库。
我无法在各自的包中找到这些数据库的任何相关模式(dbscripts)。
运行时,会填充Google Analytics数据库,但APIM数据库不会引发异常。 Analytics数据库不仅可以获取模式,还可以获取API的调用详细信息。 我无法在仪表板上获取统计数据。
以前,我(无意中)将h2-repository stats数据库配置为两个服务器相同(由于文件夹结构),并且能够在发布者的仪表板上获取所有统计信息。
我尝试过的其他配置: 在MySQL服务器上,将其指向同一个数据库(带有架构的分析数据库)但在我的仪表板上没有结果(等待一段时间后)。
答案 0 :(得分:2)
两台服务器中的两个数据源(WSO2AM_STATS_DB)都应指向同一个数据库。没有数据库脚本。表是自动创建的。
默认情况下,两个服务器中的Stats DB路径都是这样的。 (注意../
部分)
<url>jdbc:h2:../tmpStatDB/WSO2AM_STATS_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;AUTO_SERVER=TRUE</url>
因此,如果将两个服务器都提取到this doc中提到的同一目录,则两个数据源都将指向同一个数据库(在tmpStatDB内)。
/parent_dir
|__wso2am-2.0.0/
|__wso2am-analytics-2.0.0/
|__tmpStatDB/
所以,这里发生的是,wso2am-analytics将统计数据写入共享数据库,然后apim读取它并在其数据库上显示数据。