In some instances, you may need to perform additional configuration to properly instrument Microsoft SharePoint sites with the AppDynamics .NET Agent.
If you are running Microsoft SharePoint with .NET Framework 4.5.2 or 4.6 and later, the .NET Agent automatically instruments SharePoint without configuration changes to SharePoint.
If you suspect you are having issues instrumenting SharePoint sites with the .NET Agent, check the agent log (AgentLog.txt) for entries as follows:
2015-05-13 17:38:18.9799 13436 w3wp 2 26 Error ConfigurationChannel Exception: Loading this assembly would produce a different grant set from other instances. (Exception from HRESULT: 0x80131401)Exception: System.IO.FileLoadException: Loading this assembly would produce a different grant set from other instances. (Exception from HRESULT: 0x80131401)
at AppDynamics.Shared.Communication.qe.ju(Byte[ ] , String )
Choose the solution that best fits your environment, below.
If, for any reason, setting legacyCasModel to "false" is not possible, use the option below to modify the registry.
Microsoft has provided the following workaround for this issue:
Microsoft Sharepoint with .NET agent version 4.3.2 - 4.4.
add-assembly-reference is set to false out of the box, and must be set to true.
add-assembly-reference adds the AppDynamics.Agent.dll as a dependency of all loaded assembles, so that when instrumented code calls the AppDynamics.Agent.dll, the .NET agent doesn't think the call has transitioned to an untrusted dependency.
Add the following information to
config.xml under the app-agents element as the first child. Then, restart the coordinator service and your instrumented application.
<add-assembly-reference enabled="true" />
After restarting the coordinator service and your instrumented application, test the application to make sure everything works as expected. If the above change does not work, implement a global registry change.
Microsoft Sharepoint with .NET agent version 4.4.x or later
If you are running Microsoft Sharepoint with .NET agent version 4.4.x or later, you can skip using add-assembly-reference and just turn on full-no-dependency-mode in your config.xml file:
<?xml version="1.0" encoding="utf-8" ?>
<full-no-dependency-mode enabled="true" />