Which of the following tools is useful in showing the status of each account at a glance

Skip to main content

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Application Insights overview

  • Article
  • 11/22/2022
  • 6 minutes to read

In this article

Application Insights is an extension of Azure Monitor and provides Application Performance Monitoring (also known as “APM”) features. APM tools are useful to monitor applications from development, through test, and into production in the following ways:

  1. Proactively understand how an application is performing.
  2. Reactively review application execution data to determine the cause of an incident.

In addition to collecting Metrics and application Telemetry data, which describe application activities and health, Application Insights can also be used to collect and store application trace logging data.

The log trace is associated with other telemetry to give a detailed view of the activity. Adding trace logging to existing apps only requires providing a destination for the logs; the logging framework rarely needs to be changed.

Application Insights provides other features including, but not limited to:

  • Live Metrics – observe activity from your deployed application in real time with no effect on the host environment
  • Availability – also known as “Synthetic Transaction Monitoring”, probe your applications external endpoint(s) to test the overall availability and responsiveness over time
  • GitHub or Azure DevOps integration – create GitHub or Azure DevOps work items in context of Application Insights data
  • Usage – understand which features are popular with users and how users interact and use your application
  • Smart Detection – automatic failure and anomaly detection through proactive telemetry analysis

In addition, Application Insights supports Distributed Tracing, also known as “distributed component correlation”. This feature allows searching for and visualizing an end-to-end flow of a given execution or transaction. The ability to trace activity end-to-end is increasingly important for applications that have been built as distributed components or microservices.

The Application Map allows a high level top-down view of the application architecture and at-a-glance visual references to component health and responsiveness.

To understand the number of Application Insights resources required to cover your Application or components across environments, see the Application Insights deployment planning guide.

How do I use Application Insights?

Application Insights is enabled through either Auto-Instrumentation (agent) or by adding the Application Insights SDK to your application code. Many languages are supported and the applications could be on Azure, on-premises, or hosted by another cloud. To figure out which type of instrumentation is best for you, reference How do I instrument an application?.

The Application Insights agent or SDK pre-processes telemetry and metrics before sending the data to Azure where it's ingested and processed further before being stored in Azure Monitor Logs (Log Analytics). For this reason, an Azure account is required to use Application Insights.

The easiest way to get started consuming Application insights is through the Azure portal and the built-in visual experiences. Advanced users can query the underlying data directly to build custom visualizations through Azure Monitor Dashboards and Workbooks.

Consider starting with the Application Map for a high level view. Use the Search experience to quickly narrow down telemetry and data by type and date-time, or search within data (for example Log Traces) and filter to a given correlated operation of interest.

Jump into analytics with Performance view – get deep insights into how your Application or API and downstream dependencies are performing and find for a representative sample to explore end to end. And, be proactive with the Failure view – understand which components or actions are generating failures and triage errors and exceptions. The built-in views are helpful to track application health proactively and for reactive root-cause-analysis.

Create Azure Monitor Alerts to signal potential issues should your Application or components parts deviate from the established baseline.

Application Insights pricing is consumption-based; you pay for only what you use. For more information on pricing, see the Azure Monitor Pricing page and how to optimize costs.

How do I instrument an application?

Auto-Instrumentation is the preferred instrumentation method. It requires no developer investment and eliminates future overhead related to updating the SDK. It's also the only way to instrument an application in which you don't have access to the source code.

You only need to install the Application Insights SDK in the following circumstances:

  • You require custom events and metrics
  • You require control over the flow of telemetry
  • Auto-Instrumentation isn't available (typically due to language or platform limitations)

To use the SDK, you install a small instrumentation package in your app and then instrument the web app, any background components, and JavaScript within the web pages. The app and its components don't have to be hosted in Azure. The instrumentation monitors your app and directs the telemetry data to an Application Insights resource by using a unique token. The effect on your app's performance is small; tracking calls are non-blocking and batched to be sent in a separate thread.

Next steps

  • Create a resource
  • Application Map
  • Transaction search

Troubleshooting

FAQ

Review frequently asked questions.

Microsoft Q&A questions forum

Post questions to the Microsoft Q&A answers forum.

Stack Overflow

Post coding questions to Stack Overflow using an Application Insights tag.

User Voice

Leave product feedback for the engineering team on UserVoice.

Supported languages

  • C#|VB (.NET)
  • Java
  • JavaScript
  • Node.js
  • Python

Supported platforms and frameworks

Supported platforms and frameworks are listed here.

Azure service integration (portal enablement, Azure Resource Manager deployments)

  • Azure Virtual Machines and Azure Virtual Machine Scale Sets
  • Azure App Service
  • Azure Functions
  • Azure Cloud Services, including both web and worker roles

Auto-instrumentation (enable without code changes)

  • ASP.NET - for web apps hosted with IIS
  • ASP.NET Core - for web apps hosted with IIS
  • Java

Manual instrumentation / SDK (some code changes required)

  • ASP.NET
  • ASP.NET Core
  • Node.js
  • Python
  • JavaScript - web
    • React
    • React Native
    • Angular
  • Windows desktop applications, services, and worker roles
  • Universal Windows app (App Center)
  • Android (App Center)
  • iOS (App Center)

Note

OpenTelemetry-based instrumentation is available in preview for C#, Node.js, and Python. Review the limitations noted at the beginning of each language's official documentation. If you require a full-feature experience, use the existing Application Insights SDKs.

Logging frameworks

  • ILogger
  • Log4Net, NLog, or System.Diagnostics.Trace
  • Log4J, Logback, or java.util.logging
  • LogStash plug-in
  • Azure Monitor

Export and data analysis

  • Power BI
  • Power BI for workspace-based resources

Unsupported SDKs

Several other community-supported Application Insights SDKs exist. However, Azure Monitor only provides support when you use the supported instrumentation options listed on this page. We're constantly assessing opportunities to expand our support for other languages. Follow Azure Updates for Application Insights for the latest SDK news.

Feedback

Submit and view feedback for


Additional resources

Additional resources

In this article

Which of the following tumors consists of multiple cysts a bunch of grapes )?

A multicystic dysplastic kidney (MCDK) is the result of abnormal fetal development of the kidney. The kidney consists of irregular cysts of varying sizes that resemble a bunch of grapes.

Which acts requires that creditors provide applicants with accurate and complete credit costs and terms clearly and obviously?

The Truth in Lending Act (TILA) helps protect consumers from unfair credit practices by requiring creditors and lenders to pre-disclose to borrowers certain terms, limitations, and provisions—such as the APR, duration of the loan, and the total costs—of a credit agreement or loan.