What are WSO2 Analytics Solutions?

Roland Hewage
7 min readMar 21, 2020

--

Analytics Solutions refer to WSO2 SP solutions or WSO2 DAS solutions pre-designed to work with other WSO2 products. The following solutions are currently supported.

  1. APIM-Analytics
  2. EI-Analytics
  3. IS-Analytics

Let me explain briefly about each analytics solution.

What is WSO2 API Manager?

WSO2 API Manager is a complete solution for designing and publishing APIs, creating and managing a developer community, and for securing and routing API traffic in a scalable manner. It leverages proven components from the WSO2 platform to secure, integrate and manage APIs. In addition, it integrates with the WSO2 analytics platform and provides out of the box reports and alerts, giving you instant insights into the APIs behavior.

APIM Analytics

The API Manager integrates with API Manager Analytics to provide reports, statistics and graphs on the APIs deployed in WSO2 API Manager. You can then configure alerts to monitor these APIs and detect unusual activity, manage locations via geo-location statistics and carry out a detailed analysis of the logs. WSO2 API Manager has an enhanced distribution of Analytics to cater to API Manager specific scenarios.

APIM Analytics

The new SP based APIM Analytics consists of two components: Worker and Dashboard. The worker is the server that processes the data streams that are sent from WSO2 API Manager and publishes the statistics to a database. The dashboard reads the statistics published by the worker and displays the statistics on the dashboard. The worker and dashboard are connected through the database. The API Manager 2.6.0 & above integrates with the WSO2 Stream Processor 4.3.0 to provide reports, statistics and graphs on the APIs deployed in WSO2 API Manager.

The old DAS based APIM Analytics consists of the components: Data Agents, Event Recievers, Analytics REST API, Data store, Siddhi Event Processors, Analytics Spark, Data Indexing, Event Publishers, Analytics Dashboard, Event Sinks which are accessible through the DAS Management Console. API Manager 2.5.0 & below integrates with the WSO2 Data Analytics Server to provide reports, statistics and graphs on the APIs deployed in WSO2 API Manager.

What is WSO2 Enterprise Integrator?

WSO2 Enterprise Integrator (WSO2 EI) is a comprehensive integration solution that enables communication among various, disparate applications. Instead of having your applications communicate directly with each other in all their various formats, each application simply communicates with WSO2 EI, which acts mainly as an ESB to handle message transformations, and routes the messages to their appropriate destinations. The WSO2 EI product can be used to manage short-running, stateless integration flows (using the ESB profile) as well as long-running, stateful business processes (using the Business Process profile). The product also includes a separate Analytics profile (which is an instance of WSO2 Stream Processor) for monitoring ESB statistics, a Message Broker profile that can be used for reliable messaging, a Micro Integrator profile that is container-friendly, as well as the WSO2 MSF4j profile, which you can use to run micro services for your integration flows.

The ESB profile in WSO2 EI provides its fundamental services through an event-driven and standardsbased messaging engine (the bus), which allows integration architects to exploit the value of messaging without writing code. This ESB profile is a step ahead of the previous releases of WSO2 Enterprise Service Bus as it provides data integration capabilities within the same runtime. This eliminates the need to use a separate data services server for your integration processes.

The Business Process profile in WSO2 EI enables developers to easily deploy long-running integration processes (business processes). These processes are written using the following: A subset of the BPMN 2.0 standard, WS-BPEL 2.0 and BPEL4People standards, and WS-Human Tasks. Powered by the Activiti BPMN Engine 5.21.0 and Apache Orchestration Director Engine (ODE) BPEL engine, the Business Process profile in WSO2 EI comes with a complete web-based graphical management console, enabling users to easily deploy, manage, view and execute processes as well as human tasks.

The Micro Integrator profile of WSO2 EI is designed to be container-friendly so that it allows you to perform advanced scenarios without sacrificing the speed required for a container-based architecture. Because its start-up time is faster than the ESB profile, microservices are designed to start up very quickly, perform a specific task, and then shut down. Also, you can use the Micro Integrator profile to orchestrate atomic microservices into composite microservices that address more complex, real-world scenarios.

Short Running Integration Flows

The following diagram illustrates the message-flow architecture in the ESB profile of WSO2 EI, which is used for implementing integration flows.

Message Flow Architecture in the ESB profile of WSO2 EI

This shows how a request propagates to its actual endpoint through the ESB profile. Response handling is the reverse of this operation. Note that the components of the pipes are not in a specific order.

  • An application(client) sends a message to the ESB profile of WSO2 EI.
  • The message is picked up by a transport
  • The transport sends the message through a message pipe, which handles quality of service aspects such as security. Internally, this pipe is the in-flow and out-flow of the Axis2 engine. The ESB profile can operate in two modes: 1. Working with Mediators — A single pipe is used 2. Proxy Services — Separate pipes connecting the transport to different proxy services are used
  • Both message transformation and routing can be considered as a single unit. As the diagram specifies, there is no clear separation between message transformation components and routing components. In the ESB profile of WSO2 EI, this is known as the mediation framework. Some transformations take place before the routing decision has been made while others take place after the routing decision. This is part of the Synapse implementation.
  • The message is injected to the separate pipes depending on the destinations. Here again, quality of service aspects of the messages are determined.
  • The transport layer takes care of the transport protocol transformations that are required before sending the message to the receiver application.
  • The message is sent to the receiver application.

There are other areas like Scheduling ESB Tasks and Events that are not shown in the diagram. All these components can be analyzed and monitored using the EI-Analytics profile. Also, you can perform all message tracing activities via the EI-Analytics profile.

EI Analytics

The Analytics profile of WSO2 Enterprise Integrator (WSO2 EI) provides the capability of monitoring statistics of integration flows (processed in the ESB runtime) as well as business process (processed in the Business Process runtime).

The Analytics profile of WSO2 Enterprise Integrator (WSO2 EI) 6.4.0 & above is an instance of the WSO2 Stream Processor (WSO2 SP) runtime. This Analytics profile is, by default, configured to monitor statistics related to the message mediation that is carried out by the ESB profile of WSO2 EI.

The new SP based Analytics profile consists of two components: Worker and Dashboard. The worker is the server that processes the data streams that are sent from the ESB profile and publishes the statistics to a database. The dashboard reads the statistics published by the worker and displays the statistics on the dashboard. The worker and dashboard are connected through the database.

The old DAS based EI Analytics consists of the components: Data Agents, Event Recievers, Analytics REST API, Data store, Siddhi Event Processors, Analytics Spark, Data Indexing, Event Publishers, Analytics Dashboard, Event Sinks which are accessible through the DAS Management Console. WSO2 Enterprise Integrator (WSO2 EI) 6.3.0 & below (6.2.0, 6.1.1, 6.1.0, 6.0.0) integrates with the WSO2 Data Analytics Server (WSO2 DAS) to monitor statistics of integration flows (processed in the ESB runtime) as well as business process (processed in the Business Process runtime).

What is Identity Server?

WSO2 Identity Server (WSO2 IS) is a comprehensive identity and access management (IAM) solution. It caters to identity management requirements across many platforms such as enterprise applications, services, and APIs. The Identity Server enables enterprise architects and developers to reduce identity provisioning time, guarantee secure online interactions, and deliver a reduced single sign-on environment. The WSO2 Identity Server decreases the identity management and entitlement management administration burden by including the role-based access control (RBAC) convention, fine-grained policy-based access control, and Single-Sign-On (SSO) bridging.

IS Analytics

IS Analytics

WSO2 Identity Server Analytics allows you to view and analyze statistics related to authentication requests that go through WSO2 Identity Server. You can configure WSO2 Identity Server to publish authentication related events to WSO2 Identity Server Analytics so that you view and analyze the following:

  • Login analytics: Includes statistics related to login attempts made via WSO2 Identity Server.
  • Session analytics: Includes statistics related to specific sessions that get created for different applications accessed via WSO2 Identity Server.

The Analytics profile of WSO2 Identity Server (WSO2 IS) 5.7.0 & above is an instance of the WSO2 Stream Processor (WSO2 SP) runtime. This Analytics profile is, by default, configured to monitor statistics related to authentication requests that go through WSO2 Identity Server.

The new SP based Analytics profile consists of two components: Worker and Dashboard. The worker is the server that processes the data streams that are sent from the IS server and publishes the statistics to a database. The dashboard reads the statistics published by the worker and displays the statistics on the dashboard. The worker and dashboard are connected through the database.

The old DAS based IS Analytics consists of the components: Data Agents, Event Recievers, Analytics REST API, Data store, Siddhi Event Processors, Analytics Spark, Data Indexing, Event Publishers, Analytics Dashboard, Event Sinks which are accessible through the DAS Management Console. WSO2 Identity Server (WSO2 IS) 5.6.0 & below integrates with the WSO2 Data Analytics Server (WSO2 DAS) to monitor statistics of login attempts & sessions that get created for different applications accessed via WSO2 Identity Server.

--

--

Roland Hewage

(Born to Code) | Software Engineer (Ecosystem Engineering) at WSO2 | Bachelor of Computer Science (Special) Degree Graduate at University of Ruhuna, Sri Lanka