Completing a full-stack Private Cloud Evaluation is no mean feat. Central Logging by capturing and correlating information from all components, trapping and logging all required data, all without completing a significant amount of custom development – this is where innovative ideas are made.
One of the key success criteria for this customer’s full stack Private Cloud Evaluation was the detailed instrumentation of all components, providing fine-grained visibility on the interworking of all components in the solution on each test use-case. This required capturing all API calls, the data that was passed over each call, and the resulting responses. There were as many as 10 external integration points and multiple inter-component interfaces across which logs had to be captured and then corelated.
Aptira needed to identify a mechanism to trap these API calls and to log the required data.
The components used in this evaluation included OpenStack, Cloudify, OpenDayLight SDN Controller and TickStack. Although each component had its own logging mechanism, capturing the data flow between these different components with single logging mechanism was difficult. It looked like a significant amount of custom development would be required.
The Aptira Solution
Aptira’s Solutionauts came up with an innovative idea: use the API Gateway component of the solution to implement this central logging capability. This approach would remove the need for significant custom development and avoid the introduction of tools that were only used for the evaluation and had no place in a production environment.
The API gateway used in the solution was the on-premises version of Google Cloud’s Apigee API Platform, so we had all the capability we needed to implement this idea.
Apigee was already configured to manage the external APIs, and we were able to configure Apigee to manage the integration point between multiple interconnected components. Multiple Apigee proxies were created and deployed at all the integration points across the solution. Native APIs of all the components were integrated as backend service endpoints for the APIs managed by Apigee. Apart from using Apigee’s functionality – API rate limiting, API translation – we extended the Apigee’s logging policy capabilities as a central logging mechanism. This enabled us to capture all the required interface logs across all the components which we then used for the purpose of monitoring and performance analysis.
The power and capability of Apigee provided all the features we needed to implement the desired central logging functionality. All the required data was captured by invoking Apigee’s REST APIs with no involvement of 3rd party custom interfaces.
Once fully implemented, this central logging mechanism operated smoothly in parallel with the functional API calls that occurred when the system was operating and performing the evaluation use cases and we were able to successfully verify the operation of all use case functions.