Magic behind App Insights Codeless Integration with App Services

Published Mar 14 2022 07:15 PM 1,614 Views
Microsoft

As the official tool for monitoring Azure App Services, App Insights is increasingly popular among App Services users. This article explores how App Insights codeless agent integrates with App Services.

 

To start with, here is an overview of current runtime support of App Insights codeless integration on App Services.

 

 

 

Codeless agent managed by platform

Code-based App Insights SDK

Windows

.NET Framework

Y

Y

 

.NET Core

Y

Y

 

.NET

Y

Y

 

Nodejs

Y

Y

 

Java

Y

Y

Linux

.NET Core

N

Y

 

.NET

Y (.NET 6+)

Y

 

Nodejs

Y

Y

 

Java

Y

Y

 

Python

N

Y

 

Next, we will take a look at current design of App Insights codeless integration with Azure App Services. Regardless of OS and runtime stack used, what App Insights codeless integration does is injecting App Insights modules into application process. On Windows web apps, it is achieved by XDT transform while Docker commands are employed on Linux equivalents to make things happen as Linux web apps run in container environment.

 

 

 

Codeless Integration

Windows

 

.NET Framework

XDT Transform, injecting the dll which implements IHttpModule

 

.NET Core

XDT Transform, the dll is injected to the .NET Core runtime by defining “ASPNETCORE_HOSTINGSTARTUPASSEMBLIES” env var

 

.NET

XDT Transform, similar as .NET Core

 

Nodejs

XDT Transform, injecting App Inisghts Nodejs agent by adding global env var

“NODE_OPTIONS =

--require %XDT_EXTENSIONPATH%\nodejs\build\src\Loader.js”

 

Java

XDT Transform, injecting App Insights Java agent by adding global env var

“JAVA_OPTIONS =

-javaagent:'%XDT_EXTENSIONPATH%\java\applicationinsights-agent-3.2.0.jar”

Linux

 

.NET Core

N/A

 

.NET (6+)

Similar as Windows .NET Core except that “ASPNETCORE_HOSTINGSTARTUPASSEMBLIES” env var is defined in Dockerfile

 

Nodejs

Similar as Windows Nodejs except that env var

“NODE_OPTIONS” is added via docker run –e command

 

Java

Similar as Windows Java except that env var

“JAVA_TOOL_OPTIONS” is added via docker run –e command

 

Python

N/A

 

Finally, as an example, App Insights codeless integration with Windows .NET Framework web app is elaborated below to help better understand how it works under the covers.

 

1. When enabling codeless App Insights agent on the Azure Portal, applicationhost.config (i.e. the root file of the configuration system when you are using IIS 7 and above) will be updated to load a pre-installed site extension (i.e. an application hosted under SCM domain) from path “%SystemDrive%\Program Files (x86)\SiteExtensions\ApplicationInsightsAgent\x.x.xx”.

 

YangYu_0-1647488053185.png

 

YangYu_1-1647488356779.png

 

2. Upon loading the pre-installed site extension, XDT transform (i.e. site config transformation) will be performed to insert Microsoft.AppInsights.IIS.ManagedHttpModuleHelper module from GAC for target site.

 

YangYu_0-1647308142887.png

 

YangYu_1-1647308142881.png

 

YangYu_2-1647308142889.png

 

3. ManagedHttpModuleHelper module implements IHttpModule, an interface offered by ASP.NET to intercept site requests. In this case, App Insights dlls are injected into application process to monitor both inbound and outbound requests.

 

YangYu_3-1647308142885.png

 

Have fun discovering!

 

 

%3CLINGO-SUB%20id%3D%22lingo-sub-3257025%22%20slang%3D%22en-US%22%3EMagic%20behind%20App%20Insights%20Codeless%20Integration%20with%20App%20Services%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3257025%22%20slang%3D%22en-US%22%3E%3CDIV%20style%3D%22direction%3A%20ltr%3B%20border-width%3A%20100%25%3B%22%3E%0A%3CDIV%20style%3D%22direction%3A%20ltr%3B%20margin-top%3A%200in%3B%20margin-left%3A%200in%3B%20width%3A%2012.2416in%3B%22%3E%0A%3CDIV%20style%3D%22direction%3A%20ltr%3B%20margin-top%3A%200in%3B%20margin-left%3A%200in%3B%20width%3A%2012.2416in%3B%22%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3EAs%20the%20official%20tool%20for%20monitoring%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EAzure%20App%20Services%3C%2FSPAN%3E%2C%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EApp%20Insights%3C%2FSPAN%3E%20is%20increasingly%20popular%20among%20App%20Services%20users.%20This%20article%20explores%20how%20App%20Insights%20codeless%20agent%20integrates%20with%20App%20Services.%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3ETo%20start%20with%2C%20here%20is%20an%20overview%20of%20current%20runtime%20support%20of%20App%20Insights%20codeless%20integration%20on%20App%20Services.%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CDIV%20style%3D%22direction%3A%20ltr%3B%22%3E%0A%3CTABLE%20style%3D%22direction%3A%20ltr%3B%20border-collapse%3A%20collapse%3B%20border%3A%201pt%20solid%20%23A3A3A3%3B%22%20title%3D%22%22%20border%3D%221%22%20summary%3D%22%22%20cellspacing%3D%220%22%20cellpadding%3D%220%22%3E%0A%3CTBODY%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%239e9e9e%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3ECodeless%20agent%20managed%20by%20platform%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%239e9e9e%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3ECode-based%20App%20Insights%20SDK%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EWindows%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E.NET%20Framework%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E.NET%20Core%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E.NET%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ENodejs%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EJava%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ELinux%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E.NET%20Core%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EN%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E.NET%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%20(.NET%206%2B)%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ENodejs%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EJava%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EPython%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EN%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EY%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3C%2FTBODY%3E%0A%3C%2FTABLE%3E%0A%3C%2FDIV%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3ENext%2C%20we%20will%20take%20a%20look%20at%20current%20design%20of%26nbsp%3BApp%20Insights%20codeless%20integration%20with%20Azure%20App%20Services.%20Regardless%20of%20OS%20and%20runtime%20stack%20used%2C%20what%20App%20Insights%20codeless%20integration%20does%20is%20%3CSTRONG%3Einjecting%20App%20Insights%20modules%20into%20application%20process%3C%2FSTRONG%3E.%20On%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EWindows%3C%2FSPAN%3E%20web%20apps%2C%20it%20is%20achieved%20by%26nbsp%3B%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EXDT%20transform%3C%2FSPAN%3E%26nbsp%3Bwhile%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EDocker%20commands%3C%2FSPAN%3E%20are%20employed%20on%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3ELinux%3C%2FSPAN%3E%20equivalents%20to%20make%20things%20happen%20as%20Linux%20web%20apps%20run%20in%20container%20environment.%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CDIV%20style%3D%22direction%3A%20ltr%3B%22%3E%0A%3CTABLE%20style%3D%22direction%3A%20ltr%3B%20border-collapse%3A%20collapse%3B%20border%3A%201pt%20solid%20%23A3A3A3%3B%22%20title%3D%22%22%20border%3D%221%22%20summary%3D%22%22%20cellspacing%3D%220%22%20cellpadding%3D%220%22%3E%0A%3CTBODY%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%239e9e9e%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3ECodeless%20Integration%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EWindows%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E.NET%20Framework%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EXDT%20Transform%3C%2FSPAN%3E%2C%20injecting%20the%20dll%20which%20implements%20IHttpModule%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E.NET%20Core%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EXDT%20Transform%3C%2FSPAN%3E%2C%20the%20dll%20is%20injected%20to%20the%20.NET%20Core%20runtime%20by%20defining%20%E2%80%9CASPNETCORE_HOSTINGSTARTUPASSEMBLIES%E2%80%9D%20env%20var%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E.NET%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EXDT%20Transform%3C%2FSPAN%3E%2C%20similar%20as%20.NET%20Core%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ENodejs%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EXDT%20Transform%3C%2FSPAN%3E%2C%20injecting%20App%20Inisghts%20Nodejs%20agent%20by%20adding%20global%20env%20var%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E%E2%80%9CNODE_OPTIONS%20%3D%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E--require%20%25XDT_EXTENSIONPATH%25%5Cnodejs%5Cbuild%5Csrc%5CLoader.js%E2%80%9D%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EJava%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EXDT%20Transform%3C%2FSPAN%3E%2C%20injecting%20App%20Insights%20Java%20agent%20by%20adding%20global%20env%20var%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E%E2%80%9CJAVA_OPTIONS%20%3D%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E-javaagent%3A'%25XDT_EXTENSIONPATH%25%5Cjava%5Capplicationinsights-agent-3.2.0.jar%E2%80%9D%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ELinux%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E.NET%20Core%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EN%2FA%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E.NET%20(6%2B)%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3ESimilar%20as%20Windows%20.NET%20Core%20except%20that%20%E2%80%9CASPNETCORE_HOSTINGSTARTUPASSEMBLIES%E2%80%9D%20env%20var%20is%20defined%20in%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EDockerfile%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ENodejs%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3ESimilar%20as%20Windows%20Nodejs%20except%20that%20env%20var%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3E%E2%80%9CNODE_OPTIONS%E2%80%9D%20is%20added%20via%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3Edocker%20run%20%E2%80%93e%20command%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3EJava%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3ESimilar%20as%20Windows%20Java%20except%20that%20env%20var%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232b2b2b%3B%22%3E%E2%80%9CJAVA_TOOL_OPTIONS%E2%80%9D%20is%20added%20via%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3Edocker%20run%20%E2%80%93e%20command%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22zh-CN%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EPython%3C%2FP%3E%0A%3C%2FTD%3E%0A%3CTD%20style%3D%22%20text-align%3A%20center%3B%20%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20%232d2d2d%3B%22%3EN%2FA%3C%2FP%3E%0A%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3C%2FTBODY%3E%0A%3C%2FTABLE%3E%0A%3C%2FDIV%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3EFinally%2C%20as%20an%20example%2C%20App%20Insights%20codeless%20integration%20with%26nbsp%3B%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EWindows%20.NET%20Framework%3C%2FSPAN%3E%20web%20app%20is%20elaborated%20below%20to%20help%20better%20understand%20how%20it%20works%20under%20the%20covers.%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E1.%20When%20enabling%20codeless%20App%20Insights%20agent%20on%20the%20Azure%20Portal%2C%20%3CSTRONG%3Eapplicationhost.config%3C%2FSTRONG%3E%26nbsp%3B(i.e.%20%3CSPAN%3Ethe%20root%20file%20of%20the%20configuration%20system%20when%20you%20are%20using%20IIS%207%20and%20above%3C%2FSPAN%3E)%20will%20be%20updated%20to%20load%20a%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3Epre-installed%20site%20extension%20%3C%2FSPAN%3E(i.e.%20an%20application%20hosted%20under%20SCM%20domain)%20from%20path%20%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3E%E2%80%9C%25SystemDrive%25%5CProgram%20Files%20(x86)%5CSiteExtensions%5CApplicationInsightsAgent%5Cx.x.xx%3C%2FSPAN%3E%E2%80%9D.%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22YangYu_0-1647488053185.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F356418i77BA8102F41F14BB%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22YangYu_0-1647488053185.png%22%20alt%3D%22YangYu_0-1647488053185.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22YangYu_1-1647488356779.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F356419iB67B39A6F29FA27A%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22YangYu_1-1647488356779.png%22%20alt%3D%22YangYu_1-1647488356779.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20style%3D%22font-family%3A%20Calibri%3B%20font-size%3A%2011pt%3B%22%3E2.%20Upon%20loading%20the%20pre-installed%20site%20extension%2C%20%3C%2FSPAN%3E%3CSTRONG%20style%3D%22font-size%3A%2011pt%3B%22%3EXDT%20transform%3C%2FSTRONG%3E%3CSPAN%20style%3D%22font-family%3A%20Calibri%3B%20font-size%3A%2011pt%3B%22%3E%26nbsp%3B(i.e.%20site%20config%20transformation)%20will%20be%20performed%20to%26nbsp%3Binsert%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%22%3EMicrosoft.AppInsights.IIS.ManagedHttpModuleHelper%20%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20Calibri%3B%20font-size%3A%2011pt%3B%22%3Emodule%20from%20GAC%20for%20target%20site.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22YangYu_0-1647308142887.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F355692iFA19AE017B5FF26A%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22YangYu_0-1647308142887.png%22%20alt%3D%22YangYu_0-1647308142887.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22YangYu_1-1647308142881.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F355693i1E40AB1F56C279FD%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22YangYu_1-1647308142881.png%22%20alt%3D%22YangYu_1-1647308142881.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22YangYu_2-1647308142889.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F355691iE49BA444D306E20F%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22YangYu_2-1647308142889.png%22%20alt%3D%22YangYu_2-1647308142889.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20style%3D%22font-family%3A%20Calibri%3B%20font-size%3A%2011pt%3B%22%3E3.%20%3C%2FSPAN%3E%3CSTRONG%20style%3D%22font-size%3A%2011pt%3B%22%3EManagedHttpModuleHelper%3C%2FSTRONG%3E%3CSPAN%20style%3D%22color%3A%20black%3B%22%3E%3CSTRONG%3E%26nbsp%3B%3C%2FSTRONG%3Emodule%20implements%20%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-weight%3A%20bold%3B%20color%3A%20black%3B%22%3EIHttpModule%3C%2FSPAN%3E%3CSPAN%20style%3D%22color%3A%20black%3B%22%3E%2C%20an%20interface%20offered%20by%20ASP.NET%20to%20intercept%20site%20requests.%20In%20this%20case%2C%20App%20Insights%20dlls%20are%20injected%20into%20application%20process%20to%20monitor%20both%20inbound%20and%20outbound%20requests.%3C%2FSPAN%3E%3C%2FP%3E%0A%3C%2FDIV%3E%0A%3CDIV%20style%3D%22direction%3A%20ltr%3B%20margin-top%3A%200in%3B%20margin-left%3A%200in%3B%20width%3A%2012.2416in%3B%22%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22%20padding-left%20%3A%2030px%3B%20%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22YangYu_3-1647308142885.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F355694iCBD9EB66331B5833%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22YangYu_3-1647308142885.png%22%20alt%3D%22YangYu_3-1647308142885.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20style%3D%22direction%3A%20ltr%3B%22%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20black%3B%22%3EHave%20fun%20discovering!%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20black%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%20color%3A%20black%3B%22%3E%26nbsp%3B%3C%2FP%3E%0A%3C%2FDIV%3E%0A%3C%2FDIV%3E%0A%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-3257025%22%20slang%3D%22en-US%22%3E%3CP%3EExplores%20the%20way%20App%20Insights%20codeless%20agent%20integrates%20with%20App%20Services.%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-3257025%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EAzure%20App%20Service%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Co-Authors
Version history
Last update:
‎Mar 19 2022 12:31 AM
Updated by: