This post has been republished via RSS; it originally appeared at: Microsoft Tech Community - Latest Blogs - .
We are excited to introduce Azure Integration Environment, a new unified experience that helps customers manage and monitor their integration resources effectively. This platform enables customers to organize their resources logically, providing business context and reducing overall complexity. By using this platform, customers can leverage integration as a strategic advantage, unlocking new opportunities and streamlining operations.
Initially, there are two core components that make up this new unified experience:
- Integration Environment provides a common area where your resources can be managed. To support more granular management, we allow you to create Applications which allow you to relate different AIS resources together for simplified management. Learn more about Integration Environment below.
- Business Process Tracking allows organizations to set business context over the transactions that are being processed by Azure Logic Apps. For example, you may have an order processing service that spans many logic apps and workflows and you would like to expose some of this underlying information to business stakeholders. Business Process Tracking can help with that.
Integration Environment (Public Preview)
Integration environment allows organizations to assemble their resources into logical groupings. The model is flexible to allow organizations to use integration environments in a way that aligns with internal standards and principles. For some organizations this may mean grouping integration environments based upon traditional landscapes such as development, test, staging, user acceptance testing and production. For others, they may decide to group resources based upon business units or organizations such as Finance, Marketing, Operations, Corporate Services. Regardless of your organization’s structure, you should find the flexibility needed to address your requirements.
Within an integration environment, we are also introducing an application concept that allows you to further break down an environment into additional logical groupings. For example, within a production integration environment, you may see many applications, with each one fulfilling a specific purpose such as: payroll, order processing, employee onboarding, bank reconciliation, shipping notifications etc.
Creating an application involves providing a name for the application and then associating existing resources within the same Azure subscription. The resource types that are currently supported include:
- Azure Logic Apps (Standard)
- Azure API Management APIs
- Azure Service Bus queues and topics
We have plans to include additional resource types in the future. Please refer to Future Investments section later in this document for upcoming plans.
Business Process Tracking (Public Preview)
The focus for Business Process Tracking is to bring “business context to integration”. We have heard from customers that they are looking for the ability to track key business data as it moves through their integration solutions.
An important requirement that customers had for us as we were designing this experience is that they do not want to embed any tracking information directly in their workflows. They want to decouple the tracking implementation from the actual solution. We stayed true to this requirement by providing a business process designer within the Azure Portal. The business process designer allows an author to construct a series of business process stages. Within each of these stages, properties can be created that refer to key business data that the business SME would like to capture. The target audience for this business process designer is a business analyst or a business subject matter expert.
Once a business analyst has defined the business process, we envision a developer to subsequently build upon this business process by selecting within logic app workflows where data can be retrieved from so that business process properties can be gathered. To select the point in time that the data properties will be sent, a developer will use a read only version of the logic apps workflow designer and select an action and any dynamic content they would like to emit.
To illustrate how we can use Business Process Tracking, let’s consider a use case from the utilities industry that involves a customer service power outage business process. In this case, our utility named City Power & Light needs to track the status of their power outage process as it moves across 3 different systems.
As you can see below, we have a very structured business process and at each stage, we have properties that we would like to capture. You will also notice that across each stage we have Ticket Number. This is the value that we use as our Business Identifier that will allow for all events that are emitted to be aggregated.
Creating Integration Environment
- From within the Azure Portal, search for Integration Environment and then select it from the Services listed below.
- Click on + Create
- When prompted provide the following information:
- Resource Group
- Click Create button
- After you have created the Integration Environment, you should see the following screen
Next, we want to create an application within our Integration Environment that allows us to relate all the Azure resources that make up our power outage business process.
To create the application, perform the following steps:
- Click on Create new button
- Provide a Name and Description
- Click on Resources button and then select relevant Logic Apps, APIs and Service Bus entities
- Once you have added all your resources, click Next: Business process tracking button.
- To use Business Process Tracking, you need to specify an Azure Data Explorer (ADX) instance. If you do not have one, you will need to create one prior to configuring this feature. Please refer to the following documentation page for more information on how to do this.
- With your ADX instance provisioned, provide the Subscription, Cluster and Database information for your ADX instance.
- If you would like to associate Tags for your application add them by clicking on the Tags button.
- Click on Review + create button to complete provisioning your application.
- Lastly, click on the Create button.
- You should now have an application inside your Integration Environment
Creating Business Process
We can click into our newly created application and create a business process that allows us to model our actual business process. To do this, perform the following steps:
- From the left navigation panel, click on Business processes
- Click on Create new
- Provide a Name, Description and Business identifier for your business process. The Business identifier is an important concept within business process tracking as it allows you to uniquely identify a transaction. Some examples include: order number, ticket number, case number or similar reference value.
- Click Create button
- We should now see our created business process in the list of business processes.
Defining Business Process Stages
Inside our business process, we can add stages and create data properties for each stage. In the Customer Service Power Outage business process that was outlined above, we want to create six stages that represent our business process. For each stage we want to define our key business properties that allow us to gain insights into our business process.
To add a stage, we need to perform the following steps:
- For each stage, provide a Name, Description and Property(s). For each property, specify the appropriate data type.
Note: When creating stage and property names, spaces are not allowed. You can use ‘-‘ or ‘_’ as word separators.
Note: We will automatically capture a timestamp as each stage is processed, so you don’t need to add a timestamp that represents when this stage completed.
- Continue to add stages based upon the needs of the business process. For the sample business process that we previously highlighted, we ended up with the following business process.
Note: The business process represented above is a sequential workflow, but it doesn’t have to be. We have recently added support for parallelism. To add a parallel branch, click the + in between two stages.
Mapping Business Process to Logic Apps
We now need to map our conceptual business process to our actual Logic Apps (Standard) implementation. For each stage, perform the following actions:
- Select the stage you would like to map and then click on the Show data source checkbox.
- Select the Logic App and Workflow where the data properties can be found.
- Click on the Select an action to map to the stage link to open the Logic Apps workflow designer.
- Select an action that represents a “point in time” for which the data properties will be collected and sent to your Azure Data Explorer (ADX) instance.
- We now need to provide a mapping between our business process properties and where that data can be found in our workflow. We can take advantage of our workflow designer token picker to search for the relevant data and then select it.
- Of particular importance is the field called the Business Identifier. The data that you use here should be available in each of your workflows and represents a unique value for that particular transaction. For example, order numbers, case numbers, and ticket numbers are good candidates to be used as a business identifier. In the example above, we have a value called TicketNumber that is used to correlate events across our CRM, Work Order Management system and Marketing systems.
- Continue mapping business process properties for each stage. Save frequently.
- Once you have mapped all stages, ensure you save one more time and then you are ready to deploy.
Deploying Business Process
To deploy the Business Process, you need to have access to the logic apps that have been used in the mappings. The reason for this is that we will create a tracking profile in each of the logic apps that are participating in the business process. These tracking profiles will be added to the logic app’s Artifacts folder within the TrackingProfiles sub-directory.
Note: Your ADX instance must be online for a deployment to take place and for records to be ingested. In addition, deployments will cause the impacted logic apps to automatically restart.
Deployment is currently only available in the Azure Portal, and we have not provided an ability to export and import business profiles at this point in time. To deploy a business process, perform the following steps:
- Click on the Deploy button in the upper left corner of the Business Process
- You will be prompted to provide a Table name. This table will be created in the ADX instance that was configured when you created your application. It is possible to use an existing table if you choose, however, if you want each business process to have its own table for security purposes then ensure you provide a unique name.
- After a few moments, you should see a message in the upper right corner.
Viewing Business Process Transactions
We now have an active business process that should be in a deployed state and are ready to run transactions through our logic app(s). We can determine that our business process is deployed by the green checkmark displayed in the Deployed column.
To view our transactions, click on the table with the magnified glass.
Within our Transactions experience we will see any records that have been tracked by our solution. We can filter based upon our Business Identifier and Time range.
For a particular transaction, we can click on our Business identifier and that will open up a panel which will display the status of our business process.
We can further drill into a specific stage by clicking on it. When we do, we will see the tracked properties for that stage.
- Stateless workflows are not currently supported. Please share any use cases where you need stateless execution and Business Process Tracking
- Speed v/s scale paradox - right now we have optimized for speed. We look forward to the feedback with respect to realistic load and results to fine tune this aspect. We encourage early adopters to bring representative load to help use validate our architecture.
- Deployments are currently only available in the Azure Portal.
- Integration Environment currently supports Azure Logic Apps (Standard), API Management and Service Bus queues and topics. We are looking to add additional AIS services in the future.
- Application Monitoring is not included in our preview. However, it is still part of our strategic vision to include in future releases.
Business Process Tracking Future Investments
As this feature is in public preview there are some future areas of investment that we are actively tracking. We are really interested in customer feedback to help prioritize these needs:
- Support for CI/CD deployments
- Support for emitting data from other Azure services
- Tracking milestone states (Started, In progress, Complete, Failed)
When creating an Integration Enviornment, you must provision it in one of the following regions. You can still associate resources from outside that region, if you choose, but it must be in the same Azure subscription.
- Australia East
- Australia Southeast
- Brazil South
- Brazil Southeast
- Canada Central
- Canada East
- Central India
- Central US
- Central US EUAP
- East Asia
- East US
- East US 2
- East US 2 EUAP
- France Central
- France South
- Germany North
- Germany West Central
- Japan East
- Japan West
- Jio India West
- Korea Central
- Korea South
- North Central US
- North Europe
- Norway East
- Norway West
- Poland Central
- South Africa North
- South Africa West
- South Central US
- South India
- Sweden Central
- Switzerland North
- Switzerland West
- UAE North
- UK South
- UK West
- West Central US
- West Europe
- West India
- West US
- West US 2
- West US 3
If you would like to view this content in video format, check out the following YouTube video:
If you have feedback, we would love to hear from you. Please drop a comment below and we can arrange for a follow-up to further discuss your scenarios.