Dev & Engineering ✓ Microsoft · Official azure-monitorapplication-insightsopentelemetrypythonauto-instrumentationazure-identity

Azure Monitor OpenTelemetry for Python

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

FollowSkills review · FSRS-2.0
Not recommended
45/ 100 5-point scale 2.3 / 5
Trust12 / 25 · 2.4/5

The documentation recommends DefaultAzureCredential, constraining the production credential chain, and storing the connection string in environment variables, showing some least-exposure and authentication awareness. It does not explain telemetry data flow, sensitive-field redaction, collection scope, user confirmation, rollback, or egress controls, so points are deducted.

Reliability7 / 20 · 1.8/5

The install command, basic configuration, and framework examples make the happy path plausible. However, the main document uses an instrumentations parameter while the reference document uses instrumentation_options; lifecycle cleanup is stated as a rule without a complete reproducible example, and abnormal-input or failure feedback is not covered. The score remains within the static-review ceiling.

Adaptability8 / 15 · 2.7/5

Trigger phrases, the Python package, and primary scenarios are reasonably clear, covering Flask, Django, FastAPI, and custom telemetry. Non-fit ranges, compatibility boundaries, sensitive-data guidance, and mainland-China network fit are not clearly stated; the core function also depends on reachability of Azure Application Insights services, so points are deducted.

Convention8 / 15 · 2.7/5

The skill has front matter, MIT licensing, a version, installation notes, a parameter table, best practices, and layered reference files. It lacks a changelog, explicit maintenance owner and update path, troubleshooting guidance, version pinning, and complete limitation disclosure; the two documents also disagree on an API parameter name.

Effectiveness6 / 15 · 2.0/5

It can directly help with basic Application Insights auto-instrumentation and includes examples for common frameworks, sampling, role naming, and authentication. Several examples omit the required connection-string setup or exit-time flush/shutdown, and the parameter inconsistency may require manual correction. No comparative benefit or verified representative output is supplied.

Verifiability4 / 10 · 2.0/5

The supplied files contain auditable code snippets, parameter tables, repository licensing, and general CI/test materials. They do not provide skill-specific acceptance tests, execution results, or independent corroboration, and some API/capability claims conflict across files, so only limited static evidence supports the score.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • The main document's instrumentations parameter conflicts with the reference document's instrumentation_options; verify the current azure-monitor-opentelemetry API before use.
  • Telemetry may include requests, logs, exceptions, and custom attributes, but the skill provides no sensitive-data filtering, sampling-boundary, or data-residency guidance.
  • Production use should add complete connection-string injection, credential-scope, and exit-time force_flush/shutdown handling, and confirm service reachability from mainland China.
See the full review method →

What it does & when to use it

This skill helps Python developers configure the Azure Monitor OpenTelemetry Distro for Application Insights. It covers automatic tracing for Flask, Django, FastAPI, HTTP clients, databases, and Redis, plus custom traces, metrics, and logs. Configuration examples include Microsoft Entra authentication, sampling, cloud role naming, Live Metrics, and selective instrumentations. Production guidance requires an environment-provided connection string and explicit telemetry-provider flushing and shutdown at process exit.

Shows how to install azure-monitor-opentelemetry and initialize Application Insights with configure_azure_monitor(). It reads APPLICATIONINSIGHTS_CONNECTION_STRING and supports DefaultAzureCredential or a specified Azure credential for ingestion authentication. It provides examples for Flask, Django, and FastAPI, along with custom spans, metrics, logs, sampling ratios, cloud role names, Live Metrics, and instrumentation selection.

  1. A Python web developer wants minimal-code Application Insights setup for a Flask, Django, or FastAPI service.
  2. A platform team needs automatic tracing for services using Requests, httpx, database clients, or Redis.
  3. A production team wants Microsoft Entra authentication instead of relying only on an instrumentation key.
  4. A high-traffic application needs sampling and cloud role names for Application Map service identification.

Pros & cons

Pros
  • Includes direct Flask, Django, and FastAPI examples.
  • Covers custom traces, metrics, and logs.
  • Supports DefaultAzureCredential, sampling, Live Metrics, cloud role names, and selective instrumentations.
  • Provides explicit production guidance for authentication and telemetry flushing.
Limitations
  • The source does not provide a compatibility matrix, test results, or troubleshooting guide.
  • It does not explain Azure resource creation, Entra permission setup, or Application Insights pricing.
  • Automatic instrumentation is documented only for the listed libraries; support for others is not established by this source.

How to install

Install the Agent Skills collection with npx skills add microsoft/skills, then select the required skill in the wizard. The README states that skills are installed in the selected agent directory, such as .github/skills/ for GitHub Copilot. Install the Python runtime package with pip install azure-monitor-opentelemetry.

How to use

Example trigger: Configure azure-monitor-opentelemetry and Application Insights auto-instrumentation for this Python service. In code, import configure_azure_monitor and call configure_azure_monitor(credential=DefaultAzureCredential()) early; set APPLICATIONINSIGHTS_CONNECTION_STRING. For production, also set AZURE_TOKEN_CREDENTIALS=prod or a specific credential, and call the provider's force_flush() or shutdown() when the process exits.

Compared to similar skills

Compared with instrumentation-key-only authentication, the skill recommends DefaultAzureCredential for Microsoft Entra authentication; the connection string still identifies the target Application Insights resource.

FAQ

Does this skill create the Application Insights resource?
No. The source only explains configuring the Python distro, connection string, and credentials; it does not provide resource-creation steps.
Which environment variables are required in production?
APPLICATIONINSIGHTS_CONNECTION_STRING is required for all authentication methods. When using DefaultAzureCredential, production should also set AZURE_TOKEN_CREDENTIALS=prod or a specific credential.
What must happen when the application exits?
Providers are not context managers. Call force_flush() or shutdown() explicitly at process exit so buffered telemetry is exported deterministically.
Does the source specify pricing or Azure permissions?
No. It does not state pricing or list specific Microsoft Entra permission requirements.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Identity for Python

A practical skill for securing Python Azure applications with Microsoft Entra ID credentials.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs Java Skill

Build production-oriented Java event streaming applications on Azure Event Hubs.

Dev & Engineering ✓ Microsoft · Official

Azure Tables for Python

A practical guide to building authenticated Azure Tables applications with Python entity CRUD, queries, and partition-scoped batch operations.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for TypeScript

Configure secure, flexible Microsoft Entra ID authentication for TypeScript Azure applications.

Automation & Ops ✓ Microsoft · Official

Azure Reliability Advisor

Assess and improve reliability for Azure Functions and App Service.

Dev & Engineering ✓ Microsoft · Official

Azure Cloud Architect

Guides coding agents through production-grade Azure architecture design and review using Azure Architecture Center practices.

Dev & Engineering ✓ Microsoft · Official

Azure AI Text Analytics for Python

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

Automation & Ops ✓ Microsoft · Official

Azure Resource Architecture Visualizer

Analyze Azure resource groups and turn their dependencies into detailed Mermaid architecture diagrams.

Dev & Engineering ✓ Microsoft · Official

Azure Maps for .NET

Build .NET location features for search, routing, maps, geolocation, and weather.

Dev & Engineering ✓ Microsoft · Official

Azure AI Vision Image Analysis

Guides Python coding agents in implementing Azure AI Vision image understanding.

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for Python

Guides secure, production-minded Blob Storage operations in Python.

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.

Automation & Ops ✓ Microsoft · Official

Azure AI Gateway Governance

Use Azure API Management to govern traffic across AI models, MCP tools, and agents.

Automation & Ops ✓ Microsoft · Official

AKS Automatic Readiness

Assess Kubernetes workloads for AKS Automatic compatibility and identify migration blockers before you switch.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB ARM for .NET

Provision and manage Azure Cosmos DB resources from .NET through ARM.

Dev & Engineering ✓ Microsoft · Official

Azure Playwright Workspace Manager

Provision and manage Microsoft Playwright Testing workspaces with .NET and Azure Resource Manager.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB for Python

A practical guide for building reliable Python applications on Azure Cosmos DB’s NoSQL API.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault SDK for Python

Gives Python coding agents practical guidance for securely managing Azure Key Vault secrets, keys, and certificates.

Dev & Engineering ✓ Microsoft · Official

Azure API Management for Python

Gives coding agents practical Python SDK patterns for managing Azure API Management services, APIs, products, subscriptions, and policies.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor Query for Python

Generate Python code for querying Azure Monitor logs and metrics.

Related skills