API Manager分析

时间:2019-05-03 11:24:37

标签: wso2 wso2-am openam

我们正在研究建立在WSO2 APIM之上的解决方案。

问题陈述:

我们想在现有APIM中添加自定义功能。现在,如果我们使用一个api端点,它将为我们提供有意义的静态信息,其中一些是:

  • API使用率API
  • 每个应用程序的API使用情况
  • 每个应用程序的最高用户
  • 每个应用程序的资源使用情况

但是我们需要的是将一些/所有传入的请求数据存储到数据库中,并随时间提取有意义的信息。

示例:

假设我们有如下所示的api端点:

HTTP-Verb:POST

URL:https://www.nuget.org/packages/mongodb.driver

参数:name:sample_name, type:sample_type, user_id:12345

我们想要什么?

  • 可以是WSO2,OpenAM或任何其他开源API管理器。
  • 我们需要存储参数值,例如sample_namesample_type 和数据库中的user_id

观察?

任何人都有处理此类问题的经验,请告诉我。

2 个答案:

答案 0 :(得分:0)

您必须在这里解决两个问题, 1.从APIM端捕获所需的数据 2.发布到Analytics Server 3.对收到的事件执行分析

您已经观察到WSO2 SP可以用于3。

有关1和2,请参见博客(https://medium.com/@naduni_pamudika/how-to-publish-custom-attributes-from-wso2-api-manager-to-wso2-analytics-38dd83e8aea2),以扩展发布者以捕获和发布其他数据。

答案 1 :(得分:-1)

您还可以查看OpenIG,它很容易扩展,并且可以实现自己的过滤器以将请求数据存储在数据库中。另一种方法是根据Netflix ZuulSpring Cloud Gateway

开发自己的网关