Skip to content

Commit 54a72cd

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into encryptionUpdates
2 parents d6650f1 + 246a29d commit 54a72cd

14 files changed

+1606
-1508
lines changed

articles/azure-arc/kubernetes/tutorial-akv-secrets-provider.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ms.author: mayg
1414

1515
The Azure Key Vault Provider for Secrets Store CSI Driver allows for the integration of Azure Key Vault as a secrets store with a Kubernetes cluster via a [CSI volume](https://kubernetes-csi.github.io/docs/). For Azure Arc-enabled Kubernetes clusters, you can install the Azure Key Vault Secrets Provider extension to fetch secrets.
1616

17-
Benefits of the Azure Key Vault Secrets Provider extension include the folllowing:
17+
Benefits of the Azure Key Vault Secrets Provider extension include the following:
1818

1919
- Mounts secrets/keys/certs to pod using a CSI Inline volume
2020
- Supports pod portability with the SecretProviderClass CRD
@@ -27,6 +27,7 @@ Benefits of the Azure Key Vault Secrets Provider extension include the folllowin
2727

2828
- A cluster with a supported Kubernetes distribution that has already been [connected to Azure Arc](quickstart-connect-cluster.md). The following Kubernetes distributions are currently supported for this scenario:
2929
- Cluster API Azure
30+
- Azure Kubernetes Service (AKS) clusters on Azure Stack HCI
3031
- AKS hybrid clusters provisioned from Azure
3132
- Google Kubernetes Engine
3233
- OpenShift Kubernetes Distribution

articles/azure-arc/kubernetes/tutorial-arc-enabled-open-service-mesh.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ Azure Arc-enabled Open Service Mesh can be deployed through Azure portal, Azure
2929
- Only one instance of Open Service Mesh can be deployed on an Azure Arc-connected Kubernetes cluster.
3030
- Support is available for the two most recently released minor versions of Arc-enabled Open Service Mesh. Find the latest version [here](https://github.com/Azure/osm-azure/releases). Supported release versions are appended with notes. Ignore the tags associated with intermediate releases.
3131
- The following Kubernetes distributions are currently supported:
32-
- AKS Engine
32+
- AKS (Azure Kubernetes Service) Engine
33+
- AKS clusters on Azure Stack HCI
3334
- AKS hybrid clusters provisioned from Azure
3435
- Cluster API Azure
3536
- Google Kubernetes Engine

articles/azure-monitor/app/convert-classic-resource.md

Lines changed: 100 additions & 91 deletions
Large diffs are not rendered by default.

articles/azure-monitor/app/opencensus-python.md

Lines changed: 77 additions & 73 deletions
Large diffs are not rendered by default.
Lines changed: 40 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,78 +1,87 @@
11
---
22
title: OpenTelemetry with Azure Monitor overview
3-
description: Provides an overview of how to use OpenTelemetry with Azure Monitor.
3+
description: This article provides an overview of how to use OpenTelemetry with Azure Monitor.
44
ms.topic: conceptual
55
ms.date: 10/11/2021
66
ms.reviewer: mmcc
77
---
88

99
# OpenTelemetry overview
1010

11-
Microsoft is excited to embrace [OpenTelemetry](https://opentelemetry.io/) as the future of telemetry instrumentation. You, our customers, have asked for vendor-neutral instrumentation, and we're delighted to partner with the OpenTelemetry community to create consistent APIs/SDKs across languages.
11+
Microsoft is excited to embrace [OpenTelemetry](https://opentelemetry.io/) as the future of telemetry instrumentation. You, our customers, have asked for vendor-neutral instrumentation, and we're pleased to partner with the OpenTelemetry community to create consistent APIs and SDKs across languages.
1212

13-
Microsoft worked together with project stakeholders from two previously popular open-source telemetry projects, [OpenCensus](https://opencensus.io/) and [OpenTracing](https://opentracing.io/), to help create a single project--OpenTelemetry. OpenTelemetry includes contributions from all major cloud and Application Performance Management (APM) vendors and lives within the [Cloud Native Computing Foundation (CNCF)](https://www.cncf.io/) of which Microsoft is a Platinum Member.
13+
Microsoft worked with project stakeholders from two previously popular open-source telemetry projects, [OpenCensus](https://opencensus.io/) and [OpenTracing](https://opentracing.io/). Together, we helped to create a single project, OpenTelemetry. OpenTelemetry includes contributions from all major cloud and Application Performance Management (APM) vendors and lives within the [Cloud Native Computing Foundation (CNCF)](https://www.cncf.io/). Microsoft is a Platinum Member of the CNCF.
1414

1515
## Concepts
1616

1717
Telemetry, the data collected to observe your application, can be broken into three types or "pillars":
18-
1. Distributed Tracing
19-
2. Metrics
20-
3. Logs
2118

22-
Initially the OpenTelemetry community took on Distributed Tracing. Metrics and Logs are still in progress. A complete observability story includes all three pillars, but currently our [Azure Monitor OpenTelemetry-based exporter **preview** offerings for .NET, Python, and JavaScript](opentelemetry-enable.md) **only include Distributed Tracing**.
19+
- Distributed Tracing
20+
- Metrics
21+
- Logs
2322

24-
There are several sources that explain the three pillars in detail including the [OpenTelemetry community website](https://opentelemetry.io/docs/concepts/data-collection/), [OpenTelemetry Specifications](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/overview.md), and [Distributed Systems Observability](https://www.oreilly.com/library/view/distributed-systems-observability/9781492033431/ch04.html) by Cindy Sridharan.
23+
Initially, the OpenTelemetry community took on Distributed Tracing. Metrics and Logs are still in progress. A complete observability story includes all three pillars, but currently our [Azure Monitor OpenTelemetry-based exporter preview offerings for .NET, Python, and JavaScript](opentelemetry-enable.md) only include Distributed Tracing.
24+
25+
The following sources explain the three pillars:
26+
27+
- [OpenTelemetry community website](https://opentelemetry.io/docs/concepts/data-collection/)
28+
- [OpenTelemetry specifications](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/overview.md)
29+
- [Distributed Systems Observability](https://www.oreilly.com/library/view/distributed-systems-observability/9781492033431/ch04.html) by Cindy Sridharan
2530

2631
In the following sections, we'll cover some telemetry collection basics.
2732

28-
### Instrumenting your application
33+
### Instrument your application
2934

30-
At a basic level, "instrumenting is simply enabling an application to capture telemetry.
35+
At a basic level, "instrumenting" is simply enabling an application to capture telemetry.
3136

3237
There are two methods to instrument your application:
33-
1. Manual Instrumentation
34-
2. Automatic Instrumentation (Auto-Instrumentation)
3538

36-
Manual instrumentation is coding against the OpenTelemetry API. In the context of an end user, it typically refers to installing a language-specific SDK in an application. Manual instrumentation packages consist of our [Azure Monitor OpenTelemetry-based exporter **preview** offerings for .NET, Python, and JavaScript](opentelemetry-enable.md).
39+
- Manual instrumentation
40+
- Automatic instrumentation (auto-instrumentation)
41+
42+
Manual instrumentation is coding against the OpenTelemetry API. In the context of a user, it typically refers to installing a language-specific SDK in an application. Manual instrumentation packages consist of [Azure Monitor OpenTelemetry-based exporter preview offerings for .NET, Python, and JavaScript](opentelemetry-enable.md).
3743

3844
> [!IMPORTANT]
39-
> “Manual” does **NOT** mean you’ll be required to write complex code to define spans for distributed traces (though it remains an option). A rich and growing set of instrumentation libraries maintained by OpenTelemetry contributors will enable you to effortlessly capture telemetry signals across common frameworks and libraries. A subset of OpenTelemetry Instrumentation Libraries will be supported by Azure Monitor, informed by customer feedback. Additionally, we are working to [instrument the most popular Azure Service SDKs using OpenTelemetry](https://devblogs.microsoft.com/azure-sdk/introducing-experimental-opentelemetry-support-in-the-azure-sdk-for-net/).
45+
> "Manual" doesn't mean you'll be required to write complex code to define spans for distributed traces, although it remains an option. A rich and growing set of instrumentation libraries maintained by OpenTelemetry contributors will enable you to effortlessly capture telemetry signals across common frameworks and libraries.
46+
>
47+
> A subset of OpenTelemetry instrumentation libraries will be supported by Azure Monitor, informed by customer feedback. We're also working to [instrument the most popular Azure Service SDKs using OpenTelemetry](https://devblogs.microsoft.com/azure-sdk/introducing-experimental-opentelemetry-support-in-the-azure-sdk-for-net/).
48+
49+
Auto-instrumentation enables telemetry collection through configuration without touching the application's code. Although it's more convenient, it tends to be less configurable. It's also not available in all languages. The Azure Monitor OpenTelemetry-based auto-instrumentation offering consists of the [Java 3.X OpenTelemetry-based GA offering](java-in-process-agent.md). We continue to invest in it informed by customer feedback. The OpenTelemetry community is also experimenting with C# and Python auto-instrumentation, but Azure Monitor is focused on creating a simple and effective manual instrumentation story in the near term.
4050

41-
On the other hand, auto-instrumentation is enabling telemetry collection through configuration without touching the application's code. While more convenient, it tends to be less configurable and it’s not available in all languages. Azure Monitor’s OpenTelemetry-based auto-instrumentation offering consists of the [Java 3.X OpenTelemetry-based GA offering](java-in-process-agent.md), and we continue to invest in it informed by customer feedback. The OpenTelemetry community is also experimenting with C# and Python auto-instrumentation, but Azure Monitor is focused on creating a simple and effective manual instrumentation story in the near-term.
51+
### Send your telemetry
4252

43-
### Sending your telemetry
53+
There are two ways to send your data to Azure Monitor (or any vendor):
4454

45-
There are also two ways to send your data to Azure Monitor (or any vendor).
46-
1. Direct Exporter
47-
2. Via an Agent
55+
- Via a direct exporter
56+
- Via an agent
4857

49-
A direct exporter sends telemetry in-process (from the applications code) directly to Azure Monitor’s ingestion endpoint. The main advantage of this approach is onboarding simplicity.
58+
A direct exporter sends telemetry in-process (from the application's code) directly to the Azure Monitor ingestion endpoint. The main advantage of this approach is onboarding simplicity.
5059

51-
**All Azure Monitor’s currently supported OpenTelemetry-based offerings use a direct exporter**.
60+
*All currently supported OpenTelemetry-based offerings in Azure Monitor use a direct exporter*.
5261

53-
Alternatively, sending telemetry via an agent will provide a path for any OpenTelemetry supported language to send to Azure Monitor via [OTLP](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/README.md). Receiving OTLP will enable customers to observe applications written in languages beyond our [supported languages](platforms.md).
62+
Alternatively, sending telemetry via an agent will provide a path for any OpenTelemetry-supported language to send to Azure Monitor via [online transactional processing (OTLP)](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/README.md). Receiving OTLP will enable customers to observe applications written in languages beyond our [supported languages](platforms.md).
5463

5564
> [!NOTE]
56-
> Some customers have begun to use the [OpenTelemetry-Collector](https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/design.md) as an agent alternative even though Microsoft doesnt officially support “Via an Agent” approach for application monitoring yet. In the meantime, the open source community has contributed an OpenTelemetry-Collector Azure Monitor Exporter that some customers are using to send data to Azure Monitor Application Insights.
65+
> Some customers have begun to use the [OpenTelemetry-Collector](https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/design.md) as an agent alternative even though Microsoft doesn't officially support the "via an agent" approach for application monitoring yet. In the meantime, the open-source community has contributed an OpenTelemetry-Collector Azure Monitor exporter that some customers are using to send data to Azure Monitor Application Insights.
5766
5867
## Terms
5968

60-
See [glossary](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/glossary.md) in the OpenTelemetry specifications.
69+
For terminology, see the [glossary](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/glossary.md) in the OpenTelemetry specifications.
6170

62-
Some legacy terms in Application Insights are confusing given the industry convergence on OpenTelemetry. The table below highlights these differences. Eventually Application Insights terms will be replaced by OpenTelemetry terms.
71+
Some legacy terms in Application Insights are confusing because of the industry convergence on OpenTelemetry. The following table highlights these differences. Eventually, Application Insights terms will be replaced by OpenTelemetry terms.
6372

6473
Application Insights | OpenTelemetry
6574
------ | ------
66-
Auto-Collectors | Instrumentation Libraries
67-
Channel | Exporter
68-
Codeless / Agent-based | Auto-Instrumentation
75+
Auto-collectors | Instrumentation libraries
76+
Channel | Exporter
77+
Codeless / Agent-based | Auto-instrumentation
6978
Traces | Logs
7079

80+
## Next steps
7181

72-
## Next step
82+
The following websites consist of language-by-language guidance to enable and configure Microsoft's OpenTelemetry-based offerings. The available functionality and limitations of each offering are explained so that you can determine whether OpenTelemetry is right for your project.
7383

74-
The following pages consist of language-by-language guidance to enable and configure Microsoft’s OpenTelemetry-based offerings. Importantly, we share the available functionality and limitations of each offering so you can determine whether OpenTelemetry is right for your project.
75-
- [.NET](opentelemetry-enable.md)
84+
- [.NET](opentelemetry-enable.md)
7685
- [Java](java-in-process-agent.md)
7786
- [JavaScript](opentelemetry-enable.md)
7887
- [Python](opentelemetry-enable.md)

0 commit comments

Comments
 (0)