2017-06-13 43 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發佈統計信息。