BAM quick start

Prev Next

Overview

This guide walks you through setting up Business Activity Monitoring (BAM) for the first time, from choosing a deployment model to tracking your first business transaction. BAM enables end-to-end visibility into your business transactions running on Azure.

Business value

BAM helps operations and integration teams detect failures, delays, and anomalies in business processes before they impact customers. Getting started quickly lets your team move from blind spots to full transaction traceability in a single session.

Prerequisites

Before you begin, ensure the following are in place:

  • A Turbo360 account with an active organization
  • An Azure subscription connected to Turbo360
  • The Business Activity Monitoring module enabled on your Turbo360 plan
  • For the Use your Azure subscription deployment model: a service principal with Contributor access on the target resource group
  • For the Use Turbo360 infrastructure deployment model: an Azure SQL Database connection string and an Azure Storage Account connection string
  • For the Data Queries (Pull model): a service principal with Log Analytics Reader permission on the App Insights or Log Analytics workspace you want to query

Required permissions

Permission Details
Turbo360 role Account Owner, Owner, or Contributor (full privileges); BAM module-specific roles)
Azure role (own subscription) Contributor on the resource group where BAM infrastructure will be deployed
Azure role (Turbo360 infrastructure) No Azure deployment role required. Provide SQL and Storage connection strings only.
Azure role (Data Queries) Log Analytics Reader on the target App Insights or Log Analytics workspace

Dependencies

  • Azure subscription connected to Turbo360 (see Connect Azure subscription)
  • Azure SQL Database and Azure Storage Account (required when using the Turbo360 infrastructure deployment model)

How it works

BAM tracks business transactions across Azure services using two models:

  • Push model (Custom Logging): your integration components (Logic Apps, API Management, Azure Functions) send tracking events directly to BAM via HTTP or a custom connector.
  • Pull model (Data Queries): BAM queries your data sources (App Insights, Log Analytics, Service Bus) on a schedule to retrieve transaction data.

You choose a deployment model for the BAM environment during initial setup, then define business processes and transactions in Turbo360. Once data arrives, you can query transaction instances, monitor for exceptions and delays, and configure alerts.

Steps

Follow the steps below to set up your BAM environment, create a business process, and send your first tracking event. Select Get Started on the Business Activity Monitoring card on the Turbo360 homepage to begin.

Step 1: Choose a tracking type

Select the model that matches how your integration components send or expose data.

  1. Choose Custom logging to use the Push model. Your integration components send tracking events directly to BAM.
  2. Choose Data Queries to use the Pull model. BAM queries your data sources on a schedule.

Step 2: Set up the BAM environment

Complete the setup for your chosen tracking type. The Push model requires an additional deployment step; the Pull model requires only a service principal.

Option A: Push model using Turbo360 infrastructure

With this model, BAM event processing is hosted by Turbo360. You provide your own Azure SQL Database and Azure Storage Account to store your business data, keeping it within your control.

  1. Select Use Turbo360 infrastructure.
  2. Enter a group name to organise your business processes.
  3. Provide the SQL Database connection string and the Storage Account connection string. Select Validate to verify the credentials.
  4. Once validation is successful, select Initiate deployment.

The BAM environment is deployed onto Turbo360 infrastructure. A sample business process and business transaction are created automatically. The deployment screen provides learning resources while the deployment is in progress.

Option B: Push model using your Azure subscription

With this model, all BAM infrastructure is deployed directly into your own Azure subscription and resource group.

  1. Select Use your Azure subscription.
  2. Enter a group name to organise your business processes.
  3. Provide and validate your service principal credentials. Select Next once validation is successful.
  4. Enter the resource group name and region for the deployment.
  5. Select the service and pricing tiers for the required resources.
  6. Select Initiate deployment.

The BAM environment is deployed into your Azure subscription. A sample business process and business transaction are created automatically. The deployment screen provides learning resources while the deployment is in progress.

Option C: Pull model Data Queries setup

The Data Queries tracking type requires only a service principal during initial setup. BAM uses it to locate data sources such as App Insights and Log Analytics for building data queries.

  1. Choose Data Queries and select Next.
  2. Enter a group name to organise your business processes within the group.
  3. Provide and validate your service principal credentials. Select Next once validation is successful.
  4. Define the scope within which data sources such as App Insights, Azure Data Explorer (ADX), and Log Analytics can be configured.
  5. Select Create business process group.

Step 3: Create a business process

A business process groups related transactions and defines the tracking and purging rules that apply to them.

  1. Click the Context menu ( ⋮ ) next to a Business Process group and select New Business Process.
  2. Enter a Tracking name to track the Business Process and a Friendly name to uniquely identify it in the BAM module.
  3. Configure the purging policy for the business process.
  4. Select Save.

Step 4: Configure a business transaction

A business transaction defines the message flow direction, stage progression, and data retention settings for a tracked process.

  1. Within the business process, select Transactions > New transaction.
  2. Enter a Friendly name for the transaction. Avoid spaces in the name if your integration involves BizTalk components.
  3. Optionally, enter a Description.
  4. Set the Direction. Select Inbound or Outbound depending on the message flow.
  5. Optionally, enable Auto update transaction status to automatically mark transactions as successful after a configured interval. When enabled, specify the Transaction with status, Ran more than duration, and the Update to target status.
  6. Configure Reprocess stage based on transaction status to define which stages are eligible for reprocessing.
  7. Set Purge data older than to control how long transaction data is retained (in days).
  8. Select + Create.

Step 5: Send your first tracking event

Send a test event to confirm your BAM setup is receiving data correctly. The method differs between the Push and Pull models.

For the Push model:

  1. Go to Custom logging BAM type > Settings > Configuration > Connection details to retrieve your BAM endpoint URL and authentication details.
  2. Add the tracking call to your integration component (Logic App, Function, or API).
  3. Trigger a test run of your integration to send a tracking event.

For the Pull model:

  1. Switch to Data queries BAM type.
  2. Create a Business Process group and choose a data source (App Insights, Log Analytics, or ADX).
  3. Configure the query and field mappings.
  4. Save the transaction with desired stage configurations.

Step 6: Verify transaction tracking

Confirm that your test event appears in the BAM tracking view with the correct stage progression and payload data.

  1. In the BAM module, select the business process group and open the Tracking tab.
  2. Set Select top to the maximum number of results to return.
  3. Use the Started from filter to set the time window. Options are Last 15 minutes, Last 1 hour, Last 6 hours, Last 24 hours, Last 2 days, Last 7 days, or Custom.
  4. Enter a filter expression in the Enter the query field, or select Advanced query for more complex filtering.
  5. Select Search.
  6. Confirm the test transaction appears in the results. Select it to review its stage progression and payload data.

Configuration

Option Type Default Required Description Allowed values
Tracking type Dropdown - Yes The BAM tracking model to use Custom Logging (Push), Data Queries (Pull)
Deployment model Dropdown - Yes Where BAM infrastructure is hosted Use Turbo360 infrastructure, Use your Azure subscription
Group name Text - Yes Name used to organise business processes Any string
SQL Database connection string Text - Yes (Turbo360 infra) Connection string for customer-owned Azure SQL Database Valid Azure SQL connection string
Storage Account connection string Text - Yes (Turbo360 infra) Connection string for customer-owned Azure Storage Account Valid Azure Storage connection string
Resource group (own subscription) Text - Yes (own subscription) Name and region of the resource group for BAM deployment Any valid Azure resource group
Scope (Data Queries) Selector - Yes (Data Queries) Azure scope for discovering App Insights, ADX, and Log Analytics data sources Any valid Azure subscription or resource group scope
Direction Dropdown Inbound Yes Message flow direction for the business transaction Inbound, Outbound
Auto update transaction status Toggle Off No Automatically updates transaction status after a configured time interval On, Off
Purge data older than Number 50 Yes Number of days after which transaction data is purged Any positive integer (days)
Retention period Number 90 No Number of days transaction data is retained 1-365
Reprocess enabled Toggle Off No Allows failed transactions to be resubmitted On, Off

Permission behavior

With access: Users with BAM Owner or BAM Reader roles can view transaction instances, query data, and access monitoring dashboards for processes assigned to them.

Without access: Users without a BAM role cannot see the Business Activity Monitoring module in the navigation. Process and transaction data is not accessible until role assignment is completed.

Example scenario

Your organization processes purchase orders through a Logic App workflow. You set up BAM using the Turbo360 infrastructure model, providing your own SQL Database and Storage Account. After deployment, you create a purchase order business process and configure the Logic App to push tracking events at each stage: order received, validated, approved, and fulfilled. Within minutes of sending a test order, you see the full transaction lifecycle in the BAM dashboard. You then configure a duration monitor to alert your team if any order takes longer than 10 minutes to reach the approved stage.

Limitations

  • BAM does not modify or reprocess transactions automatically. Reprocessing must be triggered manually or via a configured rule.
  • The pull model is dependent on the availability and latency of the connected data source. Queries run on a schedule and do not provide real-time data.
  • Transaction payload size is subject to Azure storage limits. Very large payloads may be truncated.
  • When using the Turbo360 infrastructure deployment model, BAM event processing is hosted by Turbo360, but business data remains in your own Azure SQL Database and Storage Account.

Troubleshooting

  1. BAM environment deployment fails (own subscription model)
    Cause: The service principal does not have Contributor access on the target resource group.
    Fix: Confirm the service principal permissions and check the Azure activity log for specific deployment errors. Retry after resolving any permission issues.

  2. Connection string validation fails (Turbo360 infrastructure model)
    Cause: The SQL Database or Storage Account connection strings are incorrect, or the resources are blocked by firewall rules.
    Fix: Verify both connection strings and check for Azure SQL server firewall rules that may be blocking access from Turbo360.

  3. Transaction instances are not appearing after sending tracking events
    Cause: The BAM endpoint URL or authentication token in your integration component is incorrect.
    Fix: Retrieve the correct endpoint and token from Custom logging > Settings > Configuration > Connection details and resend a test event.

  4. Pull model query returns no data
    Cause: The data source connection is inactive or the query syntax is invalid.
    Fix: Test the query directly in App Insights or Log Analytics to verify it returns results, then re-apply it in BAM.

  5. Duration alerts are not firing
    Cause: The duration monitor is disabled or no notification channel is assigned.
    Fix: Enable the monitor and assign a notification channel under Settings > Notification channels.

What's next

You've completed the BAM quick start and your first transaction is tracked. Here's where most teams go next:

Related articles