Atatus .NET Profiler auto instruments your application and dependency code for complete performance monitoring and analysis without requiring any direct modifications to the source code. Follow the steps below to configure the Atatus .NET CoreProfiler for .NET Core, .NET Framework, IIS, and other .NET applications. Atatus agent profiler will auto-instrument your application.
.NET Framework
To install the .NET Framework profiler agent, download and execute the below installer package
Download Atatus profiler.
# For Windows https://atatus-artifacts.s3.amazonaws.com/atatus-dotnet/downloads/atatus-dotnet-agent-profiler-2.0.1-win-x64.zip
Upon downloading the profiler agent, please configure the following environment variables.
set COR_ENABLE_PROFILING=1 set COR_PROFILER={A6C28362-6F75-472A-B36C-50C1644DA40A} set COR_PROFILER_PATH=<extracted directory>\atatus_profiler.dll set ATATUS_PROFILER_HOME=<extracted directory> set ATATUS_PROFILER_INTEGRATIONS=<extracted directory>\integrations.yml set ATATUS_LICENSE_KEY=YOUR_LICENSE_KEY set ATATUS_APP_NAME=YOUR_APP_NAME # For setting up API Analytics set ATATUS_ANALYTICS=true set ATATUS_CAPTURE_BODY=all
.NET Core in Windows
To install the Atatus agent for .NET Core on Windows, apply the script provided below.
Atatus Profiler Agent supports .NET Core 5 and above."
Download Atatus profiler.
# For Windows https://atatus-artifacts.s3.amazonaws.com/atatus-dotnet/downloads/atatus-dotnet-agent-profiler-2.0.1-win-x64.zip
Upon downloading the profiler agent, please configure the following environment variables.
set CORECLR_ENABLE_PROFILING=1 set CORECLR_PROFILER={A6C28362-6F75-472A-B36C-50C1644DA40A} set CORECLR_PROFILER_PATH=<extracted directory>/atatus_profiler.dll set ATATUS_PROFILER_HOME=<extracted directory> set ATATUS_PROFILER_INTEGRATIONS=<extracted directory>/integrations.yml set ATATUS_LICENSE_KEY=YOUR_LICENSE_KEY set ATATUS_APP_NAME=YOUR_APP_NAME # For setting up API Analytics set ATATUS_ANALYTICS=true set ATATUS_CAPTURE_BODY=all
Restart your applications
.NET Core in Linux
The provided installation script can be used to deploy the Atatus agent on Linux for .NET Core applications.
Atatus Profiler Agent supports .NET Core 5 and above."
Download Atatus profiler.
# For Linux https://atatus-artifacts.s3.amazonaws.com/atatus-dotnet/downloads/atatus-dotnet-agent-profiler-2.0.1-linux-x64.zip
Upon downloading the profiler agent, please configure the following environment variables.
export CORECLR_ENABLE_PROFILING=1 export CORECLR_PROFILER={A6C28362-6F75-472A-B36C-50C1644DA40A} export CORECLR_PROFILER_PATH="<extracted directory>/libatatus_profiler.so" export ATATUS_PROFILER_HOME="<extracted directory>" export ATATUS_PROFILER_INTEGRATIONS="<extracted directory>/integrations.yml" export ATATUS_LICENSE_KEY="YOUR_LICENSE_KEY" export ATATUS_APP_NAME="YOUR_APP_NAME" # For setting up API Analytics export ATATUS_ANALYTICS=true export ATATUS_CAPTURE_BODY="all"
Restart your applications.
Internet Information Services (IIS)
Follow the instructions for installing and configuring the Atatus monitoring agent on IIS servers.
- For IIS versions before IIS 10, it is not possible to set environment variables scoped to a specific application pool, so environment variables need to set globally.
- application-pool is the name of the Application Pool your application uses. For example, IIS APPPOOL\DefaultAppPool
Environment variables need to be set globally.
Set environment variables using
AppCmd.exe
through PowerShell.Download profiler agent from source
.NET Framework
$appcmd = "$($env:systemroot)\system32\inetsrv\AppCmd.exe" $appPool = "<application-pool>" $environment = @{ COR_ENABLE_PROFILING = "1" COR_PROFILER = "{A6C28362-6F75-472A-B36C-50C1644DA40A}" COR_PROFILER_PATH = "<extracted directory>\atatus_profiler.dll" ATATUS_PROFILER_HOME = "<extracted directory>" ATATUS_PROFILER_INTEGRATIONS = "<extracted directory>\integrations.yml" COMPlus_LoaderOptimization = "1" ATATUS_LICENSE_KEY = "YOUR_LICENSE_KEY" ATATUS_APP_NAME = "YOUR_APP_NAME" } $environment.Keys | ForEach-Object { & $appcmd set config -section:system.applicationHost/applicationPools /+"[name='$appPool'].environmentVariables.[name='$_',value='$($environment[$_])']" }
.NET Core
$appcmd = "$($env:systemroot)\system32\inetsrv\AppCmd.exe" $appPool = "<application-pool>" $environment = @{ CORECLR_ENABLE_PROFILING = "1" CORECLR_PROFILER = "{A6C28362-6F75-472A-B36C-50C1644DA40A}" CORECLR_PROFILER_PATH = "<extracted directory>\atatus_profiler.dll" ATATUS_PROFILER_HOME = "<extracted directory>" ATATUS_PROFILER_INTEGRATIONS = "<extracted directory>\integrations.yml" COMPlus_LoaderOptimization = "1" ATATUS_LICENSE_KEY = "YOUR_LICENSE_KEY" ATATUS_APP_NAME = "YOUR_APP_NAME" } $environment.Keys | ForEach-Object { & $appcmd set config -section:system.applicationHost/applicationPools /+"[name='$appPool'].environmentVariables.[name='$_',value='$($environment[$_])']" }