* All non-default app domains use LoaderOptimization.SingleDomain Solves "Loading this assembly would produce a different grant set from other instances" for IIS .Net Framework applications. __DDVoidMethodType__ injected to mscorlib. __DDVoidMethodType__.__DDPatchAppDomainSetup__ use reflection-created delegate that calls OpenTelemetry.AutoInstrumentation.Loader.AppConfigUpdater.ModifyConfig to modify AppDomainSetup by setting LoaderOptimization.SingleDomain. That method called from AppDomain.CreateDomain and AppDomainManager.CreateDomainHelper. OpenTelemetry.AutoInstrumentation.Loader.AppConfigUpdater loader assembly loaded from __DDVoidMethodType__ static ctor. Added helpers: SignatureBuilder and MemberResolver. * Added installer parameter to skip GAC registration Added Asp.Net tests without registration assemblies in GAC. Removed LoaderOptimization=SingleDomain through registry change for ASP.Net tests. * Removed LoaderOptimization workaround from test dockerfiles * Code format applied * Updated test build to produce no-GAC docker images * Extended SignatureBuilder by providing semi-safe wrappers Moved it to be header-only. Added unit tests for SignatureBuilder. * Updated change log and documentation * Removed Troubleshooting link from IIS instrumentation docs * Fixed accident docker file changes * Added comment about callers of AppConfigUpdater.ModifyConfig * Update CHANGELOG.md typo based on review Co-authored-by: Chris Ventura <45495992+nrcventura@users.noreply.github.com> * Smaller cleanups * Minor names/comments changes based on @zacharycmontoya review * Fixed formatting * Make AppConfigUpdater internal --------- Co-authored-by: Chris Ventura <45495992+nrcventura@users.noreply.github.com> |
||
---|---|---|
.. | ||
Properties | ||
Directory.Build.props | ||
Dockerfile | ||
Startup1.cs | ||
TestApplication.Owin.IIS.NetFramework.csproj | ||
Web.Debug.config | ||
Web.Release.config | ||
Web.config | ||
packages.config |