The Atatus .NET Profiler attaches to .NET processes at runtime and instruments application and dependency code automatically — no source code changes required. This section covers configuration for .NET Core, .NET Framework, IIS-hosted applications, and Docker containers.
Requirements
Verify that the target environment meets the following prerequisites before installation:
| Requirement | Detail |
|---|---|
| Runtimes | .NET 5.0, 6.0, 7.0, 8.0, 9.0; .NET Framework 4.x. Earlier runtimes (.NET Core 3.1 and below) are not supported by the profiler — use the NuGet installation instead. |
| Operating system | Windows (Server and Desktop) and Linux |
| Architecture | 64-bit only. 32-bit applications are not supported. |
| Profiler model | Only one CLR profiler can be attached to a .NET process at a time. Disable any other APM profiler before attaching the Atatus profiler. |
| IIS | IIS 10 or later is recommended for per–application-pool environment variables. On IIS earlier than 10, environment variables must be configured globally. |
Note (Windows): Windows blocks DLLs downloaded from the internet by default. After extracting the profiler archive, right-click atatus_profiler.dll, open Properties, select Unblock, and apply the change. If the file remains blocked, the profiler may fail to attach without producing an error.
Supported integrations
Once attached, the profiler automatically instruments incoming HTTP requests, outgoing calls, and the following integrations:
- Databases — SQL Server and SQL Client, MongoDB, Redis
- Messaging — Azure Service Bus
- Web frameworks — ASP.NET, ASP.NET Core, and Kestrel request pipelines
For per-integration configuration, refer to the linked pages above.
Environment variable reference
The profiler is configured entirely through environment variables. The table below describes each variable.
| Variable | Description |
|---|---|
CORECLR_ENABLE_PROFILING |
Set to 1 to enable the CLR profiler for .NET Core / .NET 5+ applications. |
CORECLR_PROFILER |
CLSID of the Atatus profiler. Always set to {A6C28362-6F75-472A-B36C-50C1644DA40A}. |
CORECLR_PROFILER_PATH |
Absolute path to the profiler native library: libatatus_profiler.so (Linux) or atatus_profiler.dll (Windows). |
COR_ENABLE_PROFILING |
Set to 1 to enable the CLR profiler for .NET Framework 4.x applications. |
COR_PROFILER |
CLSID of the Atatus profiler for .NET Framework. Same value as CORECLR_PROFILER. |
COR_PROFILER_PATH |
Absolute path to atatus_profiler.dll for .NET Framework applications. |
ATATUS_PROFILER_HOME |
Path to the extracted profiler directory. |
ATATUS_PROFILER_INTEGRATIONS |
Path to the integrations.yml file inside the extracted directory. |
ATATUS_LICENSE_KEY |
Your Atatus APM license key. |
ATATUS_APP_NAME |
Application name as displayed in the Atatus dashboard. |
ATATUS_ANALYTICS |
Set to true to enable API Analytics. |
ATATUS_TRACING |
Set to true to enable distributed tracing. |
ATATUS_CAPTURE_BODY |
Set to all to capture request and response bodies in analytics. |
ATATUS_LOG_LEVEL |
Agent log level: Error, Warning, Information, or Debug. Default is Error. |
.NET Core / .NET 5+ uses the CORECLR_* variable prefix. .NET Framework 4.x uses the COR_* prefix. Do not mix the two — use only the prefix that matches the target runtime.
For additional configuration options, see Customizing the agent.
Installation
Choose the guide that matches your runtime and hosting model:
- .NET Core — standalone .NET 5.0+ applications on Linux or Windows
- .NET Framework — .NET Framework 4.x applications on Windows
- IIS — .NET Framework or .NET Core applications hosted on IIS
Docker containers
The profiler can be installed inside a Docker image to instrument .NET applications running in containers (Docker Compose, Kubernetes, Amazon ECS, and others). For the Dockerfile and full configuration, see Docker installation.
Troubleshooting
If the profiler is not attaching or no data appears in the dashboard, see .NET Application Data Not Visible in Atatus for debug logging, profiler log-file locations, and common-issue resolutions.
Next steps
After the agent is installed and reporting data:
- Containerized deployments — see Docker installation for image-based setups.
- Agent configuration — Customizing the agent covers analytics, tracing, request body capture, and debug logging.
- Per-integration configuration — SQL Client, MongoDB, Redis, and Azure Service Bus.
- Custom instrumentation — see the .NET Agent API for custom spans, transactions, and error capture.
- Log correlation — see Log correlation to associate logs with traces.
+1-415-800-4104