2017-06-13 44 views
0

我正在使用DAS 3.0.1设置wso2 API管理器1.10.x,以便使用mysql发布API统计信息。我的API管理器系统与单独的虚拟机上的网关工作者节点集群。我遵循这些文档,通过UI为API管理器启用分析。我也按照这个文档手动启用网关工作者节点的分析。 http://blog.rukspot.com/2016/05/configure-wso2-apim-analytics-using-xml.html安装完成后,我重新启动所有服务器,一切似乎都很好。但是,当我向发布的API发出请求时,网关不会向DAS接收器发布任何统计信息。 DAS摘要表中也没有数据。 通过调试wso2网关,我能够将其缩小到事实 私有静态ServiceDataPublisherAdmin dataPublisherAdminService;内部org.wso2.carbon.apimgt.impl.internal.APIManagerComponent永远不会被设置。因此APIMgtUsageHandler不做任何事情。 有什么想法可能导致这种情况发生? 谢谢。ServiceDataPublisherAdmin未在wso2 api管理器网关中设置

+0

我已确认 私有静态ServiceDataPublisherAdmin dataPublisherAdminService 将在碳初始化时设置在管理器节点中。所以工作节点中的配置会导致这种情况? – laomao

+0

通过将osgi控制台用于wso2,我确认org.wso2.carbon.statistics_4.4.8包仅存在于Manager节点中,但不存在于工作节点中。但是这个jar文件存在于两个地方。那么为什么在API管理器网关工作节点中没有激活该包? – laomao

回答

0

自己想出来。 bundle org.wso2.carbon.statistics_4.4.8和其他2个统计数据包是网关工作者将统计数据发布到DAS所必需的。但是,wso2 API manager 1.10.0包中提供的工作者配置文件已将它们排除在外。 要解决该问题,请使用-Dprofile = default在工作节点上启动wso2。 您可以使用osgi控制台确认这些软件包的激活。一旦激活了bundle,实例化了里面的类,当调用已发布的API时,网关将开始向DAS发布统计信息。