Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article provides high-level linked guidance for sending mobile app telemetry to Azure Monitor using OpenTelemetry (OTel).
OTel is a vendor-neutral, open-source standard for collecting and exporting telemetry across languages and platforms, including mobile apps.
- Set up Azure Monitor resources for ingestion.
- Choose and deploy a telemetry gateway (OpenTelemetry Collector or Azure API Management).
- Instrument mobile apps with community OpenTelemetry (OTel) SDKs.
- Analyze telemetry in Azure Monitor and Application Insights.
Important
- See the Supplemental Terms of Use for Microsoft Azure Previews for legal terms that apply to Azure features that are in beta, preview, or otherwise not yet released into general availability.
- Microsoft supports Azure Monitor experiences after telemetry reaches Azure Monitor. Microsoft doesn’t provide product support for community OpenTelemetry mobile SDKs or for configuring, operating, or troubleshooting an OpenTelemetry gateway. For details and support links, review Support boundaries and support options.
App Center retirement timeline
- March 31, 2025: App Center end of support (except Analytics & Diagnostics).
- March 31, 2027: App Center Analytics & Diagnostics end of support (telemetry ingestion).
Migrate to Azure Monitor
Complete these tasks in order:
- Prepare your Azure Monitor destination.
- Deploy a telemetry gateway.
- Configure the gateway to export telemetry to Azure Monitor.
- Remove the App Center SDK from your apps.
- Instrument the apps with a community OpenTelemetry SDK.
- Configure the apps to send telemetry to your gateway endpoint.
- Validate ingestion and update queries, dashboards, and alerts.
Prepare your Azure Monitor destination
Before you deploy a gateway or change your apps, decide where you want to store and analyze the telemetry that your gateway exports.
For this migration, you typically use:
- A workspace-based Application Insights resource to receive telemetry and provide a connection string for ingestion.
- The Log Analytics workspace linked to the Application Insights resource to store telemetry for Azure Monitor Logs (KQL), Workbooks, and Alerts.
Note
If you already have a workspace-based Application Insights resource and a linked Log Analytics workspace, reuse those resources for this migration.
Learn Azure Monitor
Use these resources to become familiar with Azure Monitor concepts and terminology:
- Azure Monitor overview
- Application Insights overview
- Azure Monitor Logs overview
- Overview of Log Analytics
- Connection strings in Application Insights
- Managed workspaces in Application Insights
Create and configure the destination resources
Important
If you plan to ingest OpenTelemetry Protocol (OTLP) signals by using Azure Monitor native OTLP ingestion endpoints (Limited Preview), follow the setup requirements in Ingest OpenTelemetry Protocol signals into Azure Monitor (Limited Preview). This setup can differ from the workspace-based Application Insights and connection string approach, and can include OTLP endpoint URLs and a Data Collection Rule (DCR), along with the related endpoint URL patterns and authentication requirements.
Use this checklist to set up the Azure Monitor side of the migration:
- Create or select a Log Analytics workspace for storage and queries. For step-by-step guidance, review Create a Log Analytics workspace.
- Create or select a workspace-based Application Insights resource and link it to the workspace. For step-by-step guidance, review Create and configure Application Insights resources.
- Record the Application Insights connection string. You can use it when you configure gateway export to Azure Monitor. Review Connection strings in Application Insights.
- Choose an ingestion authentication model:
- Use the connection string while you validate ingestion and queries. Review Connection strings in Application Insights.
- If you need to require Microsoft Entra authenticated ingestion, configure Microsoft Entra authentication for Application Insights and opt out of local authentication. Review Microsoft Entra authentication for Application Insights.
- Confirm outbound network access from your gateway environment to Azure Monitor endpoints and Microsoft Entra ID endpoints. Review Azure Monitor endpoint access and firewall configuration.
Deploy a telemetry gateway
Deploy a gateway that you manage in your cloud or network environment to receive OpenTelemetry Protocol (OTLP) telemetry from your apps and forward it to Azure Monitor.
Choose one of these gateway options:
OpenTelemetry Collector gateway (community supported; recommended for high-volume apps). Choose this option for large apps with many users. It gives you control over telemetry before it reaches Azure Monitor. You can use sampling, filtering, enrichment, or redaction. You must be able to operate the gateway.
Review these OpenTelemetry resources:
Azure API Management (APIM) proxy (recommended for small-volume apps). Choose this option if you have a small app with few users and you prefer not to deploy and operate an OpenTelemetry Collector. Review Using Azure API Management as a proxy for Application Insights Telemetry.
Key points
- Mobile apps export OTLP telemetry to a gateway endpoint.
- Choose one gateway you manage. The gateway holds credentials and forwards telemetry to Azure Monitor ingestion endpoints.
- Use an OpenTelemetry Collector gateway when you need telemetry-pipeline capabilities such as batching, retries/queueing, sampling, enrichment, filtering/redaction, or routing.
- Use an Azure API Management (APIM) proxy when you want a simpler operational model and centralized policy enforcement (for example, routing, throttling, header injection), with more limited telemetry-specific processing.
- After ingestion, use Azure Monitor experiences such as Logs, Application Insights, Workbooks, and Alerts to analyze and act on telemetry.
Configure the gateway to export telemetry to Azure Monitor
Configure an authenticated export from the gateway to Azure Monitor.
If you use an OpenTelemetry Collector gateway, you can start with these community resources:
- Azure Monitor exporter for the OpenTelemetry Collector
- Azure Monitor exporter authentication guidance
If you use Microsoft Entra authentication for ingestion, review Microsoft Entra authentication for Application Insights.
If you use Azure API Management as a proxy, review Using Azure API Management as a proxy for Application Insights Telemetry.
Remove the App Center SDK from your apps
Complete these tasks:
- Identify App Center dependencies and build integrations in your codebase.
- Remove App Center packages from your dependency manager.
- Remove App Center initialization code and service-specific API calls.
- Remove App Center configuration values and any symbol or mapping upload steps from your build or continuous integration (CI) pipeline.
- Validate that the apps no longer send telemetry to App Center.
Use these resources to locate the relevant SDK and its configuration entry points:
- App Center SDK for Android (GitHub)
- App Center SDK for Apple platforms (GitHub)
- App Center SDK for React Native (GitHub)
- App Center SDK for Unity (GitHub)
If you need help with these tasks, review Support boundaries and support options.
Instrument apps with a community OpenTelemetry SDK
Select a community OpenTelemetry SDK that matches your platform and framework. Use OpenTelemetry platform guidance to confirm current signal support, supported exporters, and instrumentation options.
Start with these OpenTelemetry resources:
- OpenTelemetry guidance for Android client apps
- OpenTelemetry guidance for iOS client apps
- OpenTelemetry ecosystem registry
OpenTelemetry (OTel) doesn't provide cross-platform software development kit (SDK) support for .NET Multi-platform App UI (MAUI) or React Native projects. Enable OTel functionality by using a native bridge within the cross-platform framework.
For .NET MAUI:
- Use native SDK interop by following the official guidance for Interop.
- Implement custom OTel behavior by using examples in the opentelemetry-dotnet repository.
For React Native:
- Create native integrations by using Native Modules in React Native.
Configure apps to send telemetry to your gateway endpoint
Send telemetry to the gateway endpoint that you deployed by configuring OpenTelemetry Protocol (OTLP) export in your apps.
Use these OpenTelemetry resources:
- OTLP exporter configuration
- OpenTelemetry Collector configuration (if you use an OpenTelemetry Collector gateway)
Validate ingestion and update analysis
Complete these tasks:
- Validate that telemetry arrives in your Log Analytics workspace by using Azure Monitor Logs.
- Identify the tables that contain your OpenTelemetry data, then update saved queries to use those tables and fields.
- Update workbooks and dashboards to match the data shape that you ingest.
- Update alert rules to use the updated queries and thresholds.
Use these resources:
- Log Analytics tutorial
- OTelSpans table reference
- OTelLogs table reference
- OTelEvents table reference
- Sample queries for OTelSpans
- Workbooks overview
- Alerts overview
Use OpenTelemetry data in Azure Monitor
After ingestion, use Azure Monitor and Application Insights to analyze telemetry.
Query OpenTelemetry tables in Logs
If you ingest OpenTelemetry logs and traces into a Log Analytics workspace, use the OpenTelemetry table references and sample queries as a starting point:
- OTelSpans table reference
- OTelLogs table reference
- OTelEvents table reference
- Sample queries for OTelSpans
To learn how to run Kusto Query Language (KQL) queries, review the Log Analytics tutorial:
Use Application Insights experiences
Use Application Insights experiences to explore requests, dependencies, failures, and performance trends:
Create workbooks and alerts
Use Azure Monitor features to build custom experiences that replace App Center dashboards and reporting:
Plan for feature differences
App Center and OpenTelemetry use different data models and portal experiences. Plan to rebuild App Center dashboards and segmentation by using Azure Monitor Logs, Workbooks, and Alerts.
Common differences include:
- App Center Analytics provides a purpose-built experience for event exploration. Azure Monitor uses Logs and Workbooks for event analysis.
- App Center Diagnostics includes mobile-focused crash grouping and stack trace symbol resolution. Azure Monitor stores exceptions and stack traces, but crash reporting workflows differ from App Center.
- App Center properties use App Center-specific schemas. OpenTelemetry uses attributes, and the attribute set depends on the SDK and instrumentation libraries that you use.
Support boundaries and support options
Use the links in this section to route issues to the right support channel.
Use community support for App Center SDK removal
Microsoft doesn't provide product support for App Center SDKs. Microsoft doesn't troubleshoot App Center SDK removal, build errors, or runtime behavior related to App Center.
Use these community resources to remove App Center SDKs:
- App Center SDK for Android (GitHub)
- App Center SDK for Apple platforms (GitHub)
- App Center SDK for React Native (GitHub)
- App Center SDK for Unity (GitHub)
For general community support, use these resources:
Use community support for OpenTelemetry instrumentation and collection
Community support covers the steps that you complete before telemetry reaches Azure Monitor, including:
- OpenTelemetry SDK selection and instrumentation for mobile apps
- OpenTelemetry Collector deployment and configuration
- OpenTelemetry Collector exporter configuration for Azure Monitor
Use these community resources:
- OpenTelemetry community
- OpenTelemetry GitHub organization
- OpenTelemetry Collector documentation
- OpenTelemetry Android client app guidance
- OpenTelemetry iOS client app guidance
- OpenTelemetry ecosystem registry
- Azure Monitor exporter for the OpenTelemetry Collector
- OpenTelemetry Collector support model
Use Microsoft support for Azure Monitor
Microsoft support covers Azure Monitor functionality after telemetry reaches Azure Monitor, including:
- Ingestion into Azure Monitor when requests reach the Azure Monitor ingestion endpoint.
- Storage and query in Azure Monitor Logs and Application Insights.
- Azure Monitor experiences such as Logs, Workbooks, and Alerts.
How to reach out to Microsoft support
In the Azure portal, go to Support + Troubleshooting, search and select Application Insights, then select Next. For more information, see Create an Azure support request.
Under Which resource are you having an issue with?, select your subscription and Application Insights resource from the drop-down menus, then select Next.
Under Are you having one of the following issues?, select None of the above. For Problem type, select Deprecated features and for Problem subtype, select Migrating from App Center to Azure Monitor, then select Next.
Scroll to the bottom of the page and select Contact support. In the Help + Support card, select Create a support request.
In the New support request pane, complete the following steps:
On the Problem description tab, enter a summary of the issue. For Problem type, select Deprecated features. For Problem subtype, select Migrating from App Center to Azure Monitor. Select Next.
On the Recommended solutions tab, review the suggested solutions. If the suggested solutions don't resolve the issue, select Return to support request, then select Next.
On the Additional details tab, provide the date the problem started, a description, any related files, diagnostic log collection permissions, and the required support severity.
On the Review + create tab, review your request. Make any required changes, then select Create.
