This blog is the readable version of one of the updates related sessions in Integrate 2020 which is “Serverless360 – Update” presented by Michael Stephenson, Microsoft Azure MVP and Advisor to Serverless360 at Integrate 2020.
This blog covers a detailed view of the Business Activity Monitoring and Resource Map in Serverless360.
Agenda
Mike started the session with the Agenda given below
- Major things since Integrate 2019
- Resource Maps
- BAM
- What’s New
Serverless360
Serverless360 is one platform that provides managing and monitoring of all Azure serverless services. It provides better operational capabilities like message processing, end to end tracking, application visibility, and much more.
Challenges
Microsoft provides us with various offerings like Subscriptions, Resource groups and management groups which consist of different Azure resources. There are some physical constraints during the deployment of resources, like the visibility of the transferring of resources. Another main challenge would be the Application level grouping when there is an MSP who cannot easily manage and monitor all their Customer environments in a single place.
Resource Map
The main objective of Resource Map is, to provide a logical view for the cloud resources and help in managing those resources actively whenever it changes. Resource Map is a platform to govern Azure resources from different subscriptions at one place.
And the below illustration shows the Aims of Resource Maps
Key Components
To categorize the resources in terms of,
- Scopes
- Logical Resources
- Environments
Scope
Scope states where your resources belong to. Scopes are represented in a tree-like structure in Serverless360. Scopes are logical grouping which in turn can have multiple environments and resources underlying. All these can be grouped to represent an organizational hierarchy.
Logical Resources
Resource Map indicates that the physical resources are different instances of the same logical resource. Consider you have dev/test/production environments and you could find multiple resources are the same, but they are versions of each other.
Environment
Each resource is logically grouped to its corresponding environment, so it becomes easier to categorize which resources belong to which environment.
Demo
Mike demonstrated the capabilities of the Resource Map. Initially, he displayed the Azure portal under which he has got a bunch of Resource Groups like production, test, dev. Under the production, he has Logic Apps, CDN, an App Service Plan, Event Grid, etc.,
The below picture shows the Scopes section under the Resource Map in the Serverless360 portal. The scopes here are represented in the tree structure. In this demo, he mainly focuses on the “FitApp” scope under the Apps scope.
All your newly added Azure resources in different subscriptions can be synchronized in the Resources section to map them into a single scope. The below picture is the result of synchronizing the resources
Applying rules helps in auto allocate resources to scopes, logical resources, and environments. Once rules are applied, resources automatically move to the tree. These rules can be used in the resources group or Subscription level that will automatically map the resources to the required scope whenever it is added.
The nodes are represented green in color once rules are assigned to them. Click on Resource Assignments and in the grid, you could see a list of Logical Resources mapped to an environment. This picture provides the view of resources mapped to an environment.
The below picture represents the comparison of the properties of physical resources in one blade and this is well organized.
Resource Map can automatically detect if any of the resources are not mapped, they will be listed under the unmapped section that can be mapped to any scope.
Cost Analysis
Understanding the cost spent on Azure Services is critical, especially while opting for Serverless architecture. Cost visualization capability in Resource Map provides the required clarity on the spending in your Azure subscription, in fact, across subscriptions.
The below picture represents the cost of the Application for the Scope – “FitApp”. We could acquire the cost analysis of the resources, types, and environments.
To know more about the Resource Map, refer the below documentation
Business Activity Monitoring
Business Activity Monitoring (BAM) is a way to provide a simplified business-focused view on what might be a complex underlying system or group of system interactions that execute to fulfill the business transaction. It facilitates end-to-end distributed tracing on your business transactions.
Scenario
This is designed in such a way that the Support operator can spare more time in managing business solutions.
Here the SAP sends a message to the Logic App say IDoc Receiver and the IDoc Receiver sends messages to the different Logic Apps that process the messages which are in different systems. There are three interfaces and the challenge here is, whether IDoc’s gets published properly or it is synced properly or not.
In Serverless360, there is a BAM connector and there is a BAM Check Point in the Logic Apps to give the view of the things happening.
BAM Demo
In this demo he has a Logic App say IDoc Receiver, he starts the transaction and passes the IDoc messages.
Likewise, there was a Logic App for Consumer that will get the messages and do the logical operations. The below picture shows the Logic App for IDoc Consumer.
In Serverless360, this Business process can be defined in the Business process section. And there are three transactions one for Publishers and the other two for Consumer which can be defined on the Business process. These transactions can be defined as a diagram representing the connectivity between the stages in the Transactions
The below picture shows the process diagram for the Consumer1
There are few properties for Receiver IDoc and one among them is LogicAppId which is passed as a header. Property XPath extracts the IDoc number and IDoc type from the XML message that comes from the Logic App connector.
When adding BAM to the Composite Applications, you could view the transactions for every 10 minutes in the Dashboard. You could also see the Logic Apps registered under the Manage Resource section. You can view the architecture under the Service Map.
In the BAM section, All the transactions of our Business process will visible. In our case, we can click on the SAP IDoc number to track the flow of the messages. The below picture shows the message flow for the Consumer2 Logic App and it is executed successfully.
You can filter based on the SAP IDoc number and you could notice that the transaction has been failed for the Consumer1. Click on Reprocess to reprocess the failed message. That’s how you can keep track of messages in Sereverless360 with the help of BAM.
To know more about Business Activity Monitoring (BAM). Refer to the below documentation and videos
Wrap Up
I hope this blog helps you understand the latest updates regarding Resource Map and BAM. As discussed, Resource Map helps us to efficiently organize and manage the cloud resources under a single scope. BAM provides us with the end to end view of the transactions in complex integrations. Extending our regards to Mike for such a lively and interactive session.
Stay connected for further updates regarding Serverless360.