---
title: "Monitor OpenTelemetry exporter: review, setup & limitations · Undominated.ai"
canonical: https://undominated.ai/skills/microsoft-azure-monitor-opentelemetry-exporter-py/
description: "Pins Microsoft's Application Insights exporter skill, which uses Entra credentials for ingestion and requires an explicit telemetry shutdown."
---

# Monitor OpenTelemetry exporter: review, setup & limitations · Undominated.ai

> Pins Microsoft's Application Insights exporter skill, which uses Entra credentials for ingestion and requires an explicit telemetry shutdown.

[← Explore all skills](/skills/)

TELEMETRY EXPORT / Microsoft

# Monitor OpenTelemetry exporter

Pins Microsoft's Application Insights exporter skill, which uses Entra credentials for ingestion and requires an explicit telemetry shutdown.

 [See setup guidance ↓](#setup)[Original source ↗](https://github.com/microsoft/skills/tree/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py)

SOURCE REVIEW

 Reviewed 2026-10-15
 Evidence 5 linked sources
 Publisher Microsoft
 Licence [MIT ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/LICENSE)
 Revision fc164ba1d7a0
 [Read what was—and wasn’t—checked ↓](#review)

“Azure Monitor OpenTelemetry Exporter for Python. Use for low-level OpenTelemetry export to Application Insights. Triggers: "azure-monitor-opentelemetry-exporter", "AzureMonitorTraceExporter", "AzureMonitorMetricExporter", "AzureMonitorLogExporter". ”

 [Microsoft · upstream description ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py/SKILL.md) Our analysis follows below.

01 / THE REASONING

## Why this made the selection.

 - The file says the connection string only identifies the Application Insights resource and that DefaultAzureCredential provides Entra authentication, and it says to use Entra instead of instrumentation keys.
- It says providers are not context managers, so production code must flush and shut them down at process exit, and it constrains production credentials with AZURE_TOKEN_CREDENTIALS.

### A good fit for

 - Building a custom OpenTelemetry pipeline that exports to Application Insights with Entra credentials rather than an instrumentation key

### Weigh up before choosing

 - The resource was not executed.
- `/plugin install azure-sdk-python@skills` installs the azure-sdk-python plugin group named in that plugin README, not this file alone.
- The same plugin README also shows `npx skills add microsoft/skills --skill azure-sdk-python`, which adds that plugin pack rather than this one file.
- The repository README's `/plugin install azure@skills` installs a different plugin.
- The samples export telemetry when run. This file does not show a dry-run.
- The configuration table lists the credential default as None. The instructions say to pass DefaultAzureCredential.
- The example connection string still contains an InstrumentationKey field. The file says that string identifies the resource.
- The installation block does not name azure-identity, while the samples import it.
- A sample sets disable_offline_storage=True, so retry storage is not mandatory.
- references/capabilities.md and references/non-hero-scenarios.md were not opened.
- Retry storage is enabled by default in the configuration table and uses a temporary directory unless storage_directory is supplied.

02 / THE REVIEW RECORD

## What we actually inspected.

Source review has boundaries. A clear record is more useful than a “safe” badge.

### Material inspected

 - .github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py/SKILL.md
- README.md
- .github/plugins/azure-sdk-python/README.md
- LICENSE

### Our findings

 - The connection string identifies the Application Insights resource, and DefaultAzureCredential supplies Microsoft Entra authentication for ingestion.
- Production use must set AZURE_TOKEN_CREDENTIALS to prod or a named credential so the credential chain is constrained.
- Telemetry providers are not context managers and must be flushed and shut down at process exit.
- The best practices say to use Microsoft Entra authentication instead of instrumentation keys.
- Quick setup is sent to the azure-monitor-opentelemetry distro. This file is for a custom pipeline.

### Not established by this review

 - The resource was not executed.
- No telemetry was exported and no credential was requested.
- The referenced capabilities and non-hero scenario files were not opened.
- The azure-sdk-python plugin was not installed.
- Not executed: it was not installed or run.

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

## Add a skill to your workflow.

[Upstream setup instructions ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/README.md)

DOCUMENTED COMMAND

 /plugin install azure-sdk-python@skills Copy command ↗

Copying does not execute this command. It may retrieve a newer version than the reviewed source.

 - The azure-sdk-python plugin README shows `/plugin install azure-sdk-python@skills`. That installs the plugin group, not this one file.
- The same README shows `npx skills add microsoft/skills --skill azure-sdk-python`, which adds that plugin pack from the repository.
- The repository README shows `/plugin marketplace add microsoft/skills` and `/plugin install azure@skills` for a different plugin.

### Before you start

 - The skill's installation block names the package azure-monitor-opentelemetry-exporter
- APPLICATIONINSIGHTS_CONNECTION_STRING, which the skill marks required for every auth method
- A DefaultAzureCredential chain; the samples import azure.identity, which the installation block does not name
- AZURE_TOKEN_CREDENTIALS set to prod or a named credential when DefaultAzureCredential is used in production

### Compatibility

GitHub Copilot · GitHub Copilot CLI

### Implementation

python

### Local skill text; telemetry is exported only if an operator runs the samples

 - Read the skill text
- Authenticate ingestion with DefaultAzureCredential only if the operator runs a sample
- Send traces, metrics, or logs only if the operator runs those samples

### Cost model

MIT; no Azure or pip command was run

04 / FOLLOW THE EVIDENCE

## The source trail.

Our notes are separate from the original resource. Check upstream before adopting a new version.

 - [azure-monitor-opentelemetry-exporter-py SKILL.md ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py/SKILL.md) Checked 2026-10-14 https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py/SKILL.md Supports: Entra ingestion auth, connection-string identification, and explicit provider shutdown
- [azure-sdk-python plugin README ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/README.md) Checked 2026-10-14 https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/README.md Supports: /plugin install azure-sdk-python@skills for the plugin group
- [Repository README ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/README.md) Checked 2026-10-14 https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/README.md Supports: Copilot CLI plugin install for a different azure plugin, and the MIT statement
- [Repository LICENSE ↗](https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/LICENSE) Checked 2026-10-14 https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/LICENSE Supports: MIT License
- [Pinned source sections reviewed in continuation W27 on 2026-10-15 ↗](https://raw.githubusercontent.com/microsoft/skills/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py/SKILL.md) Checked 2026-10-15 https://raw.githubusercontent.com/microsoft/skills/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py/SKILL.md Supports: upstreamDescription, limitations, review.reviewedAt, review.notTested

KEEP COMPARING

## Other approaches to consider.

Related by category or shared topics. These are alternatives to inspect, not a measured quality order.

 [### API Center management SDK ↗ Pins Microsoft's API Center Python skill, which requires DefaultAzureCredential and rejects connection strings and API keys for the management client.](/skills/microsoft-azure-mgmt-apicenter-py/)[### API Management SDK ↗ Pins Microsoft's API Management Python skill, which requires DefaultAzureCredential and rejects connection strings and API keys for the management client.](/skills/microsoft-azure-mgmt-apimanagement-py/)[### Azure Web PubSub Service Python ↗ Pins the Web PubSub service Python skill, which prefers DefaultAzureCredential and says to limit client tokens with roles.](/skills/microsoft-azure-messaging-webpubsubservice-py/)

 [AI Tools ↗](/tools/)[Skills ↗](/skills/)[Agents ↗](/agents/)[MCP Servers ↗](/mcp-servers/)[Workflows ↗](/workflows/)

## Continue your investigation

 - [Choose a toolkit](/tools/)
- [Inspect execution hosts](/agents/)
- [Check tool access](/mcp-servers/)
- [Check project dependencies](/check-repo/)
