Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry Exporter

Build a controlled Python OpenTelemetry pipeline that exports traces, metrics, and logs to Application Insights.

49/ 100
Use with care

Useful, but reliability, evidence or controls still have material gaps.

See how it was scored ↓
Works as-is in
Codex · Claude Code
Stars
★ 2.7k
Last updated
3mo ago
License
MIT
pythonopentelemetryapplication-insightsazure-monitor
+3telemetry-exportentra-authenticationoffline-storage

What does this skill do, and when should you use it?

This skill is for Python developers building a custom OpenTelemetry pipeline. It explains how to use Azure Monitor OpenTelemetry Exporter to send traces, metrics, and logs to Application Insights. The guidance covers Microsoft Entra authentication, sampling, offline retry storage, sovereign clouds, and explicit provider shutdown. For quick setup with auto-instrumentation, the source recommends the azure-monitor-opentelemetry distro instead.

It instructs users to install the azure-monitor-opentelemetry-exporter Python package, read APPLICATIONINSIGHTS_CONNECTION_STRING to identify the Application Insights resource, and authenticate ingestion with DefaultAzureCredential or another Azure credential. It configures AzureMonitorTraceExporter, AzureMonitorMetricExporter, and AzureMonitorLogExporter for traces/spans, metrics, and logs. It also demonstrates BatchSpanProcessor, PeriodicExportingMetricReader, BatchLogRecordProcessor, ApplicationInsightsSampler, offline storage, retry behavior, and sovereign-cloud endpoints.

Good fit
  • A Python team needs separate control over trace, metric, and log exporters in a custom OpenTelemetry pipeline.
  • A service must authenticate telemetry ingestion with Microsoft Entra ID instead of relying on instrumentation keys.
  • A production workload needs batching, consistent sampling, and offline retry storage for transient failures.
  • A developer is targeting Azure Government or another sovereign-cloud endpoint with a custom authority.
  • A project already uses the OpenTelemetry SDK but does not need the full auto-instrumentation distro.

How do you install this skill?

Before you use it
  • Telemetry may contain application logs, exceptions, attributes, and request data; verify redaction, sampling, retention, RBAC, and regional or cross-border data-transfer requirements before deployment.
  • Examples do not consistently show provider.shutdown()/force_flush(), and the install command does not explicitly list azure-identity and OpenTelemetry dependencies or compatible versions; validate in the target environment.
  • Triggering is narrow, and the skill does not fully define boundaries against the azure-monitor-opentelemetry distro, sync/async usage, or mainland-China networking and sovereign-cloud constraints.
Before you start
Your agent needs
  • Shell / CLI
  • Network access
  • Local filesystem
Install first
  • Python
  • azure-monitor-opentelemetry-exporter
  • azure-identity
  • OpenTelemetry Python SDK

Install the collection with npx skills add microsoft/skills, then select this skill in the wizard; it is installed into the chosen Agent directory, such as .github/skills/ for GitHub Copilot. In the Python project, run: pip install azure-monitor-opentelemetry-exporter. The source does not document exact installation paths for other Agents.

Generic route: install into Claude Code manually (macOS / Linux)
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/microsoft/skills.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/.github/plugins/azure-sdk-python/skills/azure-monitor-opentelemetry-exporter-py" ~/.claude/skills/
rm -rf "$tmp"

Generated from the source repository and skill path; it copies only this skill's folder. If the author's install steps above differ, follow those first. To scope it to one project, replace ~/.claude/skills with that project's .claude/skills.

How do you use this skill?

Use a trigger such as "azure-monitor-opentelemetry-exporter", "AzureMonitorTraceExporter", "AzureMonitorMetricExporter", or "AzureMonitorLogExporter". Set APPLICATIONINSIGHTS_CONNECTION_STRING; when using DefaultAzureCredential in production, also set AZURE_TOKEN_CREDENTIALS=prod or a specific credential. Configure the required exporter and call provider.shutdown() or force_flush() when the process exits.

What are this skill's strengths and limitations?

Pros
  • Covers traces, metrics, and logs.
  • Supports DefaultAzureCredential, specific Azure credentials, sampling, offline storage, and sovereign clouds.
  • Includes copyable Python examples and production-oriented guidance.
  • The repository is MIT-licensed and described as actively maintained.
Limitations
  • It is a low-level custom-exporter skill rather than a quick auto-instrumentation solution.
  • Applications must explicitly manage provider flushing and shutdown.
  • The source does not document independent test coverage or a version compatibility matrix for this individual skill.
  • Offline storage requires local filesystem configuration and writes.

How does this skill compare with similar options?

Side by side with related skills; every score comes from the same FSRS standard.

Skill FS score Stars Last updated License
Azure Monitor OpenTelemetry Exporter this page ✓ Microsoft · Official 49 · Use with care ★ 2.7k 3mo ago MIT
Azure Monitor OpenTelemetry for Python ✓ Microsoft · Official 45 · Not recommended ★ 2.7k 3mo ago MIT
Azure Monitor Telemetry for Java ✓ Microsoft · Official 44 · Not recommended ★ 2.7k 3mo ago MIT
Azure Monitor OpenTelemetry for TypeScript ✓ Microsoft · Official 43 · Not recommended ★ 2.7k 3mo ago MIT
Application Insights Web Monitoring ✓ Microsoft · Official 54 · Use with care ★ 2.7k 3mo ago MIT

Compared with the azure-monitor-opentelemetry distro, this skill is intended for custom pipelines and fine-grained control; the distro is intended for quick setup and auto-instrumentation.

How did FollowSkills review this skill?

FollowSkills review · FSRS-2.0
Use with care
49/ 100 5-point scale 2.5 / 5
1Trust15 / 25 · 3.0/5

The documentation recommends DefaultAzureCredential, constraining production credential chains, avoiding instrumentation keys, and states that telemetry is sent to Application Insights. However, it does not explain possible sensitive-data capture, retention or redaction, least-privilege RBAC, user confirmation, external network effects, or recovery boundaries, so points are deducted. No malware, credential theft, covert exfiltration, destructive default, or other red-line behavior is evident.

2Reliability7 / 20 · 1.8/5

Installation, authentication, the three exporter types, offline storage, and shutdown guidance provide a plausible happy path, with some retry configuration. However, there are no skill-specific tests, compatibility matrix, abnormal-input handling, or diagnostic failure messages. The skill requires flush/shutdown at exit but most examples do not demonstrate it, so points are deducted. Static calibration caps this score at 10.

3Adaptability9 / 15 · 3.0/5

The name, trigger phrases, Python audience, and low-level exporter positioning are clear, and the skill distinguishes the distro from custom pipelines. It does not clearly define non-fit cases, input/output contracts, semantic trigger boundaries, Chinese-language usage, or mainland-China network, regional, and proxy considerations, so points are deducted.

4Convention9 / 15 · 3.0/5

Front matter supplies the MIT license, author, and version 1.0.0; the documentation separates the main guide from reference scenarios, while the README, license, CI, and security-reporting material provide some governance signals. Changelog, pinned dependency guidance, explicit maintenance/update ownership, troubleshooting, and complete limitation notes are missing, and some reference content is duplicated, so points are deducted.

5Effectiveness6 / 15 · 2.0/5

Examples cover traces, metrics, logs, Entra authentication, sampling, offline storage, and sovereign clouds, making the core export workflows directly useful. Complete dependency installation, sensitive-telemetry governance, a consistent shutdown example, and verified representative outputs are absent, so users still need review and completion; the score stays below the static ceiling of 7.

6Verifiability3 / 10 · 1.5/5

The skill includes concrete APIs, environment variables, and configuration examples, and the repository provides general CI, evaluation workflows, and test infrastructure. The supplied material contains no skill-specific test suite, execution results, pinned versions, or independent corroboration, so the assessment relies mainly on author documentation. Static calibration caps this score at 5.

1 2 3 4 5 6

Open a dimension to read why it scored that way

Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a Review evidence[1][2][3][4][5][6][7][8][9][10][11][12]

Evidence confidence:Low — Mostly static review, author material or a limited demo; useful for discovery, not high-risk decisions.

See the full review method →

FAQ

Is this the right choice for a quick Application Insights setup?
Not necessarily. The source recommends azure-monitor-opentelemetry for quick setup and auto-instrumentation; this skill targets custom pipelines and fine-grained control.
Do I have to use an instrumentation key?
No. The skill uses APPLICATIONINSIGHTS_CONNECTION_STRING to identify the resource and recommends DefaultAzureCredential or another Azure credential for Microsoft Entra authentication.
What happens when telemetry export fails?
Offline storage is enabled by default for retry, and storage_directory can customize its location. Setting disable_offline_storage=True disables retry storage.
Does using this skill add a stated cost?
The source states that the repository is MIT-licensed but does not provide pricing information for Application Insights or Azure services.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry for Python

Connect Python applications to Application Insights with one-line OpenTelemetry setup.

★ 2.7k FS 45 Not recommended 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Monitor Telemetry for Java

Guides Java teams in exporting OpenTelemetry data to Azure Monitor.

★ 2.7k FS 44 Not recommended 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry for TypeScript

Add Application Insights observability to Node.js services with OpenTelemetry.

★ 2.7k FS 43 Not recommended 3mo ago
Dev & Engineering ✓ Microsoft · Official

Application Insights Web Monitoring

Instrument browser and React Native apps with Application Insights for user behavior, requests, errors, and GenAI trace visibility.

★ 2.7k FS 54 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Fabric Capacity Manager

Manage Microsoft Fabric capacities and their lifecycle with the Azure Python SDK.

★ 2.7k FS 46 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Queue Storage for Python

Gives coding agents reliable Python patterns for secure Azure Queue Storage messaging and asynchronous task processing.

★ 2.7k FS 55 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Application Insights Instrumentation Guide

Practical guidance for adding Application Insights telemetry to Azure-hosted ASP.NET Core and Node.js web apps.

★ 2.7k FS 48 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Monitor Query for Python

Generate Python code for querying Azure Monitor logs and metrics.

★ 2.7k FS 54 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Monitor Custom Log Ingestion

Guides Python agents to send custom logs to Log Analytics through the Logs Ingestion API.

★ 2.7k FS 53 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Monitor Query for Java

Query Azure Monitor logs and resource metrics from Java applications.

★ 2.7k FS 52 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure AI Text Analytics for Python

Guides Python developers through Azure-powered text analysis and NLP workflows.

★ 2.7k FS 56 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Data Lake Gen2 for Python

Guides Python developers through hierarchical file-system and large-file operations on Azure Data Lake Storage Gen2.

★ 2.7k FS 53 Use with care 3mo ago
Automation & Ops ✓ Microsoft · Official

Azure Production Diagnostics

Systematically investigate Azure production failures, identify root causes, and guide safe remediation.

★ 2.7k FS 52 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

FastAPI Router Builder

Create consistent FastAPI CRUD routes with authentication and typed responses.

★ 2.7k FS 51 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Microsoft Entra Agent ID Provisioning

Provision OAuth2-capable identities for AI agents through Microsoft Graph beta.

★ 2.7k FS 50 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure AI Transcription for Python

Guides Python applications through Azure AI real-time and batch speech-to-text transcription.

★ 2.7k FS 49 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Short-Audio Speech-to-Text REST

Transcribe audio up to 60 seconds with Python HTTP requests.

★ 2.7k FS 49 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

MCP Server Development Guide

A practical guide to building clear, testable MCP servers that let LLMs work with external APIs.

★ 2.7k FS 49 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Content Understanding for Python

Extract structured multimodal content from documents, images, audio, and video with Python.

★ 2.7k FS 48 Use with care 3mo ago
Dev & Engineering ✓ Microsoft · Official

Azure Monitor Log Ingestion for Java

Guides Java applications in sending structured custom logs to Azure Monitor through DCRs.

★ 2.7k FS 48 Use with care 3mo ago

Related skills