Skip to content

Commit 6bd3083

Browse files
author
Jill Grant
authored
Merge pull request #278924 from AaronMaxwell/aaronmax-azure-otel
Azure OTEL
2 parents f7993fd + feba675 commit 6bd3083

File tree

2 files changed

+81
-0
lines changed

2 files changed

+81
-0
lines changed
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
---
2+
title: OpenTelemetry on Azure
3+
description: This article provides an overview of OpenTelemetry on Azure.
4+
ms.topic: conceptual
5+
ms.date: 06/21/2024
6+
ms.reviewer: quying
7+
---
8+
9+
# OpenTelemetry on Azure
10+
11+
Azure's integration with OpenTelemetry provides a suite of products for:
12+
13+
> [!div class="checklist"]
14+
> - Collection of telemetry data in a standardized way
15+
> - Consumption of data using curated experiences on Azure Monitor and local tools
16+
17+
This article guides you through our OpenTelemetry offerings to help you understand Microsoft’s strategic investments.
18+
19+
For more information about OpenTelemetry on Azure, see [our OpenTelemetry Roadmap](https://techcommunity.microsoft.com/t5/azure-observability-blog/making-azure-the-best-place-to-observe-your-apps-with/ba-p/3995896).
20+
21+
## Data collection
22+
23+
The **Azure Monitor OpenTelemetry Distro** is Microsoft’s customized, supported, and open-sourced version of the OpenTelemetry software development kits (SDKs). It supports .NET, Java, JavaScript (Node.js), and Python. The Azure Monitor OpenTelemetry Distro replaces the Application Insights SDK.
24+
25+
It focuses on ease-of-enablement by bundling together:
26+
27+
> [!div class="checklist"]
28+
> - The OpenTelemetry SDK and API
29+
> - Instrumentation Libraries across logs, metrics, and traces
30+
31+
In addition, Azure Monitor OpenTelemetry Distro-based automatic instrumentation solutions are integrated into App Service for Java and Python apps and into Java Functions.
32+
33+
- [Enable Azure Monitor OpenTelemetry for .NET, Java, Node.js, and Python applications](./opentelemetry-enable.md)
34+
- [Diagnose with Live Metrics](./live-stream.md)
35+
- [Migrating Azure Monitor Application Insights Python from OpenCensus to OpenTelemetry](./opentelemetry-python-opencensus-migrate.md)
36+
- [Monitor Azure app services performance Python (Preview)](./azure-web-apps-python.md)
37+
- [Monitor Azure app services performance Java](./azure-web-apps-java.md)
38+
- [Monitor applications running on Azure Functions with Application Insights](./monitor-functions.md)
39+
40+
**Azure SDKs** are instrumented with OpenTelemetry APIs to power end-to-end observability. All supported languages are instrumented to emit OpenTelemetry HTTP and/or Messaging Tracing Semantics; .NET and Java are being instrumented to emit OpenTelemetry HTTP Metrics Semantics.
41+
42+
- [Azure SDK semantic conventions](https://github.com/Azure/azure-sdk/blob/main/docs/tracing/distributed-tracing-conventions.md)
43+
- [Tracing in the Azure SDK for Java](/azure/developer/java/sdk/tracing)
44+
- [Azure Cosmos DB SDK observability](/azure/cosmos-db/nosql/sdk-observability)
45+
46+
The **.NET** OpenTelemetry implementation uses logging, metrics, and activity APIs in the framework for instrumentation. The OpenTelemetry SDK collects telemetry from those APIs and other sources (via instrumentation libraries) and then exports the data to an application performance monitoring (APM) system for storage and analysis.
47+
48+
- [.NET Observability with OpenTelemetry](/dotnet/core/diagnostics/observability-with-otel)
49+
50+
**Azure Monitor pipeline at edge** is a powerful solution designed to facilitate high-scale data ingestion and routing from edge environments to seamlessly enable observability across cloud, edge, and multicloud. It uses the OpenTelemetry Collector. Currently, in public preview, it can be deployed on a single Arc-enabled Kubernetes cluster, and it can collect OpenTelemetry Protocol (OTLP) logs.
51+
52+
- [Accelerate your observability journey with Azure Monitor pipeline (preview)](https://devblogs.microsoft.com/dotnet/introducing-dotnet-aspire-simplifying-cloud-native-development-with-dotnet-8/)
53+
- [Configure Azure Monitor pipeline for edge and multicloud](/dotnet/aspire/fundamentals/dashboard/overview)
54+
55+
**OpenTelemetry Collector Azure Data Explorer Exporter** is a data exporter component that can be plugged into the OpenTelemetry Collector. It supports ingestion of data from many receivers into to Azure Data Explorer, Azure Synapse Data Explorer, and Real-Time Analytics in Fabric.
56+
57+
- [Data ingestion from OpenTelemetry to Azure Data Explorer](/azure/data-explorer/open-telemetry-connector)
58+
- [GitHub repository of Azure Data Explorer Exporter](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/exporter/azuredataexplorerexporter)
59+
- [Azure Synapse Data Explorer](/azure/synapse-analytics/data-explorer/data-explorer-overview)
60+
- [Real-Time Intelligence](/fabric/real-time-intelligence/overview)
61+
62+
**Azure Functions** allows exporting log and trace data in OTLP format. It supports telemetry from both the host process and the worker process. When enabled, the data can be sent to any OpenTelemetry-compliant endpoints.
63+
64+
- [Use OpenTelemetry with Azure Functions](/azure/azure-functions/opentelemetry-howto)
65+
- [Monitor Azure Functions](/azure/azure-functions/monitor-functions)
66+
67+
## Data platform and consumption
68+
69+
**.NET Aspire** is an opinionated cloud-native stack that includes observability by default with OpenTelemetry. Part of it's a "Developer Dashboard" to observe OpenTelemetry signals in real-time during debugging. It collects logs, metrics, and traces using OTLP from applications of any OpenTelemetry-supported languages besides .NET.
70+
71+
- [.NET Aspire: Simplifying Cloud-Native Development with .NET 8](https://devblogs.microsoft.com/dotnet/introducing-dotnet-aspire-simplifying-cloud-native-development-with-dotnet-8/)
72+
- [.NET Aspire dashboard overview](/dotnet/aspire/fundamentals/dashboard/overview)
73+
74+
**Azure Monitor Application Insights** is Azure’s APM that supports cloud-scale application monitoring and excels at observability for both cloud-native applications and VM-based applications. Application Insights provides experiences powered by OpenTelemetry to enhance the performance, reliability, and quality of your applications. For example, Application map is a visual overview of application architecture and components' interactions; Transaction search helps identify issues and optimize performance.
75+
76+
- [Application Insights overview](./app-insights-overview.md)
77+
- [Application map in Azure Application Insights](./app-map.md)
78+
- [Transaction Search and Diagnostics](./transaction-search-and-diagnostics.md)
79+
- [Live Metrics](./live-stream.md)

articles/azure-monitor/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ items:
4545
items:
4646
- name: Application Insights overview
4747
href: app/app-insights-overview.md
48+
- name: OpenTelemetry on Azure
49+
href: app/opentelemetry.md
4850
- name: Enable Application Insights
4951
items:
5052
- name: Data Collection Basics

0 commit comments

Comments
 (0)