For the past few months, we were working on bringing some important features into the platform.
Today most of the Integration Scenarios built using Azure Technologies looks more or less like this, a bunch of API’s (exposed/consumed), Service Bus (Queues/Topics), Logic Apps, Azure Functions and Azure Web Jobs all put together in a lightweight integration solution.
We wanted to expand Serverless360 to support managing and monitoring these kinds of solution seamlessly. Today managing these kinds of solutions using Azure Portal is challenging.
As part of that journey, First we wanted to expand the capabilities of Serverless360 to cover Azure Logic Apps and API Monitoring(REST API’s) in addition to the already existing features like Azure Service Bus (Queues, Topics), Azure Event Hub and Azure Relay. Second, we wanted to bring two important platform features User Access Policy and Data Monitoring (learning from BizTalk360).
Let’s take a high-level summary look at the 4 new features we added to the platform
- User Access Policy (security)
- API Monitoring (HTTP endpoints)
- Azure Logic Apps (Management & Monitoring)
- Data Monitoring (Azure Logic Apps)
PREVIEW – the last 2 features are released as a preview since we haven’t finalized on the pricing structure at this stage. We are working on another major release for mid of October, until that point the features are free to use.
User Access Policy (security)
Serverless360 already has the capabilities to add two user types – Super User and Normal User. With the introduction of “User Access Policy”, administrators can define fine-grained security restrictions for normal users to different sections of Serverless360.
Example: You may not want the support people to have the ability to purge messages, perform CRUD operations on entities like Queues/Topic, Import entities between namespaces and so on. Now with the fine-grained user access policy capability, you can fully control the access.
As you can see from the below configuration screen, the administrator now has full control of what level of access you wanted to provide for the normal users into the platform.
API’s became the core part of any integration solution now. You either expose a lot of your own REST API’s or you consume external third party REST API’s within your solution. It becomes super important to make sure the API’s are up and running and performing the tasks as expected.
Hence we brought the rich API Monitoring capability into Serverless360 in this release.
When you are calling an API there may be different requirements like authentication, HTTP GET/POST, passing in Query Strings, sample body message for POST, additional HTTP Headers, Content-Type, HTTP Version etc. The API Monitoring capability of Serverless360 provides users with options to configure all these settings seamlessly as shown below.
Most of the API Monitoring solution only check for availability like response code 200, but we wanted to make the API Monitoring capability super powerful so you can validate various kind of response parameters.
Example: The response could be plain text, XML or JSON message, you can have to monitor for specific free text in the response or can have a specific XPath or JSON Path expression looking for some specific value. You can also simply look for HTTP OK or any required HTTP status messages or you can alert based on the performance of the API like response time as shown below.
Azure Logic Apps (Management & Monitoring)
Azure Logic Apps with its rich set of connectors became the core workflow/orchestration solution in Azure. As highlighted in the beginning of the article, pretty much all integration solutions in Azure today utilizes Azure Logic Apps because of its intuitive user experience and pure Serverless pay-as-you-go pricing model.
We wanted to bring a rich set of management and monitoring capabilities within Serverless360 and address some of the gaps in Azure Portal when it comes to Azure Logic Apps.
Azure Logic Apps monitoring and management using Serverless360 is pretty straightforward, you just need to register your relevant Azure Service Principal, once your Service Principal is associated, you can choose the Logic Apps you wanted to manage and monitor using Serverless360.
Data Monitoring (Azure Logic Apps)
What is data monitoring? Data Monitoring is the concept of alerting based on historical data. Example: “If my total billable executions of Azure Logic Apps exceeds over 500 every 30 minutes, then send me an alert”.
We cover about 30 different metrics in Azure Logic Apps that can be configured via Data Monitoring as listed below.
Keeping an eye on cost: Being a Serverless platform you cannot predict the cost of running your solution easily. The only best thing you can do is keep an eye on your cost and alert if things go wrong badly. Using the “Total Billable Executions” metrics in Data Monitoring you can have alerts if it exceeds certain volume.
Failed Runs: The second use case could be if there are so many failed runs (“Runs Failed”) every hour, you can alert an operations person since there could be some business impact.
Successful Runs: The third use case could be for positive executions, you may need to process so many insurance claims or purchase orders every 30 minutes, in this case, you can configure data monitoring and watch for “Runs Completed” of a specific Logic App.
The time duration in Serverless360 is very powerful, as shown in the below picture you can validate and alert in different frequencies like
- Every 15 minutes
- Every 1 hour
- On Specific Days
- End the validation after so many occurrences (or) on a specific date etc.
In addition, you can also have a warning and error threshold validation, example: If the billable execution is less greater than 500 it’s warning, but if it reached 2000 billable executions then it’s an error.
In this release we are shipping “Data Monitoring for Azure Logic Apps”, in the upcoming releases, we will extend Data Monitoring capabilities to all other technologies like Queues, Topics, Event Hubs and so on.
Data Monitoring Dashboard
In addition to verifying and alerting different metric on the schedule, we also build a brand new dashboard specifically for visualizing Data Monitoring. Since data monitoring operates on historical time window it makes sense to showcase the overall health in a calendar view as shown below
Each date in the calendar will have color-coded circles showing green, yellow or red representing success, warning and failures conditions for that date. Once you click on a specific date you can see the execution status based on your schedule like health every 15 minutes, 1 hour, etc. You can also further drill down and get more information for a specific time slot.
Get Started Today
As you can see we are investing more to make the Serverless360 platform to support managing and monitoring of integration solutions built on Azure. We will continue bringing other key technologies like Azure Functions, Event Grid, Web Jobs, Stream Analytics, API Management, etc. in the upcoming releases.
You can start using all the above features today by signing up for Serverless360 (it takes less than 5 minutes to get started)