Azure App Services
The .NET Raygun APM Azure Site Extension profiles Windows Azure App Service applications. It runs the Raygun Agent as a continuous WebJob and loads the Raygun profiler into the application worker.
Requirements
- Use a Windows App Service running .NET Framework or a supported .NET runtime.
- Use a Windows App Service plan that supports Always On, and enable it. Plans without Always On are not supported for the continuous Agent WebJob.
- Disable Application Insights Profiler and any other CLR profiler. A .NET process can load only one profiler.
- Ensure
WEBJOBS_STOPPEDis absent or set tofalse. - Restart the whole App Service after installing or upgrading the extension.
note: The extension does not use a fixed application port. It selects an unused ephemeral UDP port during installation and configures both the application profiler and Agent with that same port.
Install and configure the extension
- Open the App Service in the Azure portal.
- Open Settings > Environment variables (called Configuration in some portal versions).
- Add an application setting named
Raygun_ApiKeyand set it to the API key for the Raygun application that will receive the traces. - Enable Always On in the App Service general settings.
- Open Development Tools > Extensions.
- Add .NET Raygun APM and accept its terms.
- Restart the whole App Service after installation finishes.
- Generate traffic through real application endpoints and confirm traces appear in Raygun.
The extension maps Raygun_ApiKey to the profiler at runtime. The API key is not stored in the extension package.
How profiler communication works in Azure
Azure runs the application worker and continuous WebJob in separate sandboxes. Loopback and private-IP unicast do not reliably route profiler traffic between those sandboxes.
The extension therefore configures an Azure-only multicast bridge:
Application worker + RaygunProfiler.dll
-> UDP 239.100.15.215:<installer-selected ephemeral port>
-> RaygunAPM WebJob + RaygunAgent.exe
-> HTTPS to Raygun
The multicast group is restricted to the Azure extension configuration. Standard Windows and Linux installations use loopback and do not enable multicast. Do not configure WEBSITES_PORT, WEBJOBS_PORT, or a sandbox IP for Raygun profiler traffic.
Verify the installation
After restarting the App Service:
- Open WebJobs and confirm the
RaygunAPMcontinuous WebJob is running. - Open Kudu Process Explorer and confirm
RaygunAgent.exeis running.DaasRunner.exeis an Azure diagnostics process, not the Raygun Agent. - Confirm the application worker loaded
RaygunProfiler.dll. - Confirm
PROTON_WIRE_COMMAND_PORTin the application environment matchesTraceUdpListeningPortin the Agent configuration. - Confirm the multicast address is
239.100.15.215. - Invoke more than a health-check route and verify new traces continue to arrive for several minutes.
A loaded profiler DLL proves only that the CLR attached it. It does not prove that profiler commands reached the Agent or that Raygun accepted traces.
Upgrade or uninstall
Install the new extension version and restart the whole App Service. Versioned profiler files are kept while an existing worker can still have the previous DLL loaded.
To uninstall, remove .NET Raygun APM from Extensions and restart the whole App Service. Remove the Raygun_ApiKey application setting if it is no longer required.
If profiling does not start, see Azure App Services troubleshooting.