Thursday, March 20, 2014

Integrating WSO2 API Manager with a 3rd Party Billing tool

How can we integrate 3rd party billing to the WSO2 API Manager? 
The API Manager already collects all API related data when an API invocation is made by a service consumer. The API Manager can publish them to the WSO2 Business Activity Monitor (WSO2 BAM) out of the box, which the WSO2 BAM uses to generate information required for API statistics. The same process can be utilized by a 3rd party tool to access API information from the API Manager. Once the data is published to the WSO2 BAM, WSO2 BAM would stores the data in a Cassandra data-store and summarize these data periodically based on a set of Apache Hive queries. The summarized information can then be inserted to a RDBMS which can be accessed by the 3rd party billing tool. This can be illustrated by the diagram below

The WSO2 API Manager is shipped with a standard set of Hive queries(As part of the BAM toolbox) to summarize API data. It is possible to modify or write your own Hive queries to summarize the API information based on your own KPI's to fit the needs of the 3rd party billing system. The billing system can directly access the RDBMS and use it as a data source to generate billing information.

Wednesday, March 5, 2014

Metadata relationship in WSO2 Governance Registry

Given the different metadata types available in WSO2 Governance Registry, it adds a great amount of confusion to understand how these are related to each other. Let me explain it through the simple diagram below