microsoft / ApplicationInsights-Announcements

Subscribe to this repo to be notified about major changes in Application Insights.
38 stars 13 forks source link

Status Monitor or WebApp extension is now required to auto-collect HTTP dependencies on .NET 4.5.1-4.5.2 runtime #9

Open AlexBulankou opened 8 years ago

AlexBulankou commented 8 years ago

Previously Application Insights Dependency Collector module was attempting to automatically collect asynchonous HTTP dependencies on applications compiled with .NET 4.5+ and running on .NET 4.5.1 and 4.5.2 runtime. We were using the mechanism built into .NET framework. However we discovered that the approach we were using was not reliable. Specifically, we could not detect whether HTTP calls failed or succeeded and also were reporting duplicate calls. To ensure correctness we will no longer be auto-collecting async HTTP dependencies on these runtime versions.

Customers wishing to collect HTTP dependencies on .NET 4.5.1 and .NET 4.5.2 should use Application Insights Status Monitor. On Azure WebApps you can also enable Application Insights Extension (please see Azure WebApp section here)

The changes will be enabled with upcoming Dependency Collector 2.1.0-beta3 release, however, even if you are not upgrading we are recommending that you enable Status Monitor or WebApp extension to ensure accuracy.

Remote dependency support matrix

.NET runtime Async HTTP Sync HTTP SQL
< 4.6 install Status Monitor/WebApp Extension (1) install Status Monitor/WebApp Extension install Status Monitor/WebApp Extension
>= 4.6 (if app is compiled with 4.5+) auto-collected by framework, no Status Monitor/WebApp Extension required (2) auto-collected by framework, no Status Monitor/WebApp Extension required (2) auto-collected by framework, no Status Monitor/WebApp Extension required (3)

(1) Before 2.1.0-beta3 release, Dependency Collector was attempting to auto-collect async HTTP dependencies using mechanism built into .NET framework, but that approach was found unreliable (2) Starting with 2.1.0-beta3 release, Dependency Collector enabled with StatusMonitor/WebApp Extension provides better sync/async HTTP support by including HTTP verb (GET,POST,PUT etc). (3) Status Monitor/WebApp Extension provides better SQL command instrumentation support by capturing CommandText property

leppie commented 8 years ago

It seems SQL async deps are also not supported at all, can this at least be added to this announcement?

abaranch commented 8 years ago

SQL async dependencies are being autocollected. They are not automatically correlated with requests. You can use operations API to correlate dependencies and requests.