What is Application Insights?
Application Insights is an Application Performance Management (APM) tool by Microsoft. It is an extensible analytics service that monitors live web applications and services – hosted on Azure, other cloud services or on-premises servers. It provides rich and comprehensive information on the performance and usability of the live application, effectively enabling developers to take prompt actions to improve their application.
What insights does it provide?
Using Application Insights, a developer can see the following real-time information related to the live application.
1. Request rates, response times, failed requests (HTTP, SQL, AJAX)
2. Log and Exception traces
3. Server performance counters
4. Usage trends
5. Availability
6. Custom client/server telemetry
How does it present the insights?
The information provided by Application Insights can be viewed either in Visual Studio or inside the Application Insights resource on the Azure portal. The telemetry data is presented to the developers via the following tools.
1. Charts and Dashboards
2. Search Explorer
3. Metrics Explorer
4. Application Map
5. Analytics
6. Alerts
How to make it work?
The diagram displayed below illustrates the typical flow of events that a development team would take to make the best use of Application Insights.
1. Before the application is published:
a. Install Application Insights SDK for the application in Visual Studio
b. Configure the dashboard, decide what you want to see
c. Set up alerts for conditions that you reckon are critical
2. After the application is published:
a. Watch the live metrics stream for any slow or failing requests
b. In case of any exceptions or critical situations, act upon alerts
c. Examine the stack dumps, log and exception traces, dependencies
d. Resolve issues based on the findings
3. On an ongoing basis:
a. Assess the patterns around how users actually use the application
b. Based on user activity, enhance the application
Platforms that can make use of it
Applications and services built using almost every platform can make use of Application Insights service. Below is the list of most famous platforms and frameworks.
Who are its competition and how does it stand against them?
Dynatrace, AppDynamics, New Relic and CA Technologies are few of the leaders in the APM market. Application Insights is still in Preview. However, the companies that have used the tool have great words for it.
Following are some of the features of Application Insights that set it a touch above its competitors.
1. It’s more developer focused than others, giving more control to developers and hence brings out prompter results
2. Its rich and open-source SDK allows developers to build custom telemetry
3. It combines APM functions with usage and log analysis, not so common in its competitors