Gone are the days when SOA, REST and microservices were buzz words that did not apply to you. Gone are also the days when monolithic applications were built by organizations end-end. The availability of specialized components and services from different organizations and the access to these components through RESTful services has resulted in a major inflexion point with APIs becoming the mechanism for data interchange and systems to interact.
APIs are the new Normal
If you are charged with building and supporting APIs in your group or you are embracing a service oriented architecture for the design and delivery of an entire app or set of apps, it will be required that you monitor these APIs at all times to ensure that the consumers of the API and it's services have access to it at all times.
It is also likely that you are consuming services provided by other groups or external partners to provide the capabilities in your app or apps. These need to be monitored as well.
You will have to worry about 3 areas when it comes to the APIs you are building
(a) availability: is the service accessible at all times
(b) correctness: is it responding with the correct payload made up of the correct constituent elements and
(c) performance: it is responsive and is coming back with the correct response in an acceptable time frame.
Additionally, it will be required that you have the ability to get alerted when the above conditions are not met and also chart/report on trends involving the performance and availability of your APIs.
Ready! API as a platform allows you the ability to build functional tests for your APIs. Ideally these should be re-used for monitoring, as the functional tests are already setup to determine correctness of the APIs functioning and behavior.
Ready! API is now seamlessly integrated with AlertSite, SmartBear’s post deployment monitoring platform, in a manner so as to allow you to re-use your test cases to create proactive monitors, in 3 easy steps as shown below.
Why is API monitoring critical?
You need to think of a continuous cycle of development, testing, deployment and monitoring. As engineering organizations embrace Agile practices (read more here) and other modern techniques for software development, testing and deployment, it is critical that monitoring becomes a required extension of that continuous integration cycle and we update our monitoring scripts with the correct and latest versions of the functional tests to ensure uninterrupted availability for the consumers of the services.
When APIs fail, your applications fail: if you are using APIs to provide services for the functioning of your app and they are either not available, functioning improperly or not being responsive, it impacts the performance of your app and the end user experience.
Once again, it is critical that you not only monitor the APIs you provide but also the ones you consume from 3rd parties.
How do I monitor an API/Web service with Ready! API?
The latest version of Ready! API already has the AlertSite Connector plugin for Ready! API pre-installed and ready for use. This allows you to re-use your existing test cases and create monitors out of them that can be run from AlertSite’s global network of nodes or from inside your firewall.
You can monitor your APIs in 3 easy steps as shown in the graphic below:
To get started, click the Monitor APIs icon on the SoapUI NG toolbar to start the AlertSite Connector.
Step 1: Connect to AlertSite with a new or existing account.
To do this, click on Getting Started in the upper right corner.
A. Connect to AlertSite using a new account that is Free. To do so, enter your email address, a password that is at least 8 chars long and confirm the password. Click on the Create Account button to connect to AlertSite.
B. Connect to AlertSite using an existing AlertSite account. To do so, first click on the ‘I already have an account’ link. Then enter your AlertSite email address and password and click on Connect.
C. If you have forgotten your password, click on the forgot password link to help reset your password.
D. You can check the ‘Reconnect when Ready! API starts’ to automatically connect with AlertSite and update the status of your running monitors.
Step 2. Add your existing API test cases to create monitors
All your test cases are available to you when you click add monitors. Select your project, test suite and test case and give it a monitor name (this is what monitoring tests are called in AlertSite). You may choose to create a new one or drop the list down and overwrite an existing monitor.
Name your API monitor and select the frequency you want to monitor from 1-120 minutes. Once this is done, Click on the Add button.
If you wish to create more than 1, you can check the Add another check box.
Once you are done adding monitors, you can click on the Done button to close the Add Dialog box.
Step 3. Monitor your API’s for availability, correctness and performance
How do I install a newer version of the plugin?
To install a newer version of the plugin:
1. Follow the instructions above to uninstall the older version of the plugin if an older version exists.
2. Click on the Plugin Manager icon on the toolbar.
3. Browse to the location on disk where the plugin (.jar) file is located. You will see the AlertSite Connector plugin listed in the list box.
4. Close the plugin manager.
5. Restart Ready! API if needed.
6. At this point you will see the Monitor APIs icon on the toolbar to the right of the “New LoadTest” toolbar button.
Additional API Monitoring Resources