Hi all, I am currently working on the first phase of the project creating a Management Dashboard for Micro-gateways.
Introduction
The WSO2 API microgateway is a lightweight message processor which is used
for message security , transport security, routing and other common API
management services. So that it is important to have a management dashboard
for these micro gateways to keep track of the micro services.
Issue
Currently up and running micro-gateways can not be monitored from a
dashboard. When there are plenty of microgateways exposing several
APIs/microservices , there should be a dashboard available in API manager
Admin portal in order to know the state and details of these
micro-gateways. We can use either push or pull method in order to notify
about the up and running microgateways.
Push Method
Pros :
-
No unnecessary traffic. The data is pushed only when the data becomes
available.
-
In this scenario , both endpoints stay idle until some information is
sent to the admin portal.
-
The admin portal keeps the connection to the other endpoint (micro
gateway) constantly active, so get the new information instantly.
Cons :
-
Sometimes the data will arrive at an unwanted time when the admin portal
is not ready for it. However this can be remedied by using a dependency
constraint.
Option 1:
We can store the data that we receive from the mocrogateways in a database
and then push those data to be displayed in the Management Dashboard.
Option 2:
Otherwise we can keep those data in memory and then push those to be
displayed in the management dashboard.
Solution
We can implement a User Interface(dashboard) in the APIM Admin portal to
monitor the micro gateways and push or pull (REST API) mechanism support of
notifying in Micro gateway side. When considering the push and pull method,
it will be efficient to use the Push method for this due to the above
mentioned pros and cons. In the dashboard it will be useful to display some
of the following features.
-
Currently up and running microservices
-
Status of the microservices (up or down)
-
The uptime of the exposed micro services
-
Request Counter (No.of requests served , No.of failed requests, No.of
successful requests)
-
Request Failure rate
-
No.of requests per second(Throughput)
Rough sketch of a dashboard
[image: dashhhhhhhhboard.png]
I have created a swagger specification for this. Please find it attached
below. And highly appreciate your thoughts on this $subject.
Thanks!
--
*Kavindi Gunasinghe* | Intern - Engineering | WSO2 Inc. <http://wso2.com/>
(M)+94 773058210 | (E) [email protected] <[email protected]>
<https://wso2.com/signature>
swagger_definition.yaml
Description: application/yaml
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
