Documentation forAppOptics

Install on Linux

Get the agent

The .NET Agent for Linux is currently available as a beta release.

The agent is distributed as a compressed archive that can be downloaded from https://files.appoptics.com/dotnet/dotnet-agent-package.tgz.

We recommend extracting it to a directory named $HOME/appoptics. All the examples below assume this as the install directory.

First, download and extract the agent:

Copy
mkdir -p ${HOME}/appoptics
pushd ${HOME}/appoptics
curl -sSO https://files.appoptics.com/dotnet/dotnet-agent-package.tgz
tar -xvf dotnet-agent-package.tgz
popd

Then designate the agent as a CLR profiler by setting the following environment variables:

Copy
export APPOPTICS_HOME_APM_DOTNET=${HOME}/appoptics
export CORECLR_PROFILER={824293AD-22E2-4DAA-BC28-166C140543BE}
export CORECLR_PROFILER_PATH=${APPOPTICS_HOME_APM_DOTNET}/AppOpticsProfiler.so

To enable the agent for a process, set the following environment variable for the process:

Copy
export CORECLR_ENABLE_PROFILING=1

If the above is set at the system level, you may selectively disable a process from instrumentation by setting CORECLR_ENABLE_PROFILING=0 for the process. For example, to exempt the dotnet SDK commands in a bash shell:

Copy
CORECLR_ENABLE_PROFILING=0 dotnet --info
CORECLR_ENABLE_PROFILING=0 dotnet publish ...

The agent also requires a service key, which can be set either in the configuration file ${APPOPTICS_HOME_APM_DOTNET}/agent.config or as the APPOPTICS_SERVICE_KEY environment variable, for example:

Copy
export APPOPTICS_SERVICE_KEY=<appoptics-api-token>:<service-name>

Finally, restart the .NET Core application for these changes to take effect.

Instrumenting non-dotnet processes

Any application that starts with the dotnet command (runs under the dotnet process), is automatically considered for instrumentation. An example:

Copy
dotnet dotnet-core-application.dll

To instrument an application that is ran directly such as a self-contained executable, you’ll need to add it in the <applications> section in the agent.config configuration file. An example:

Copy
<applications>
  <application name="dotnet-core-executable" />
</applications>

Log File Location

Agent log files are located under the /var/tmp/appoptics directory.

Uninstalling the Agent

Unset all the environment variables exported during the Get the agent section and (optional) remove the agent install directory.

The agent can also be disabled via the <AppOptics> configuration setting.

When the APM Integrated Experience is enabled, AppOptics shares a common navigation and enhanced feature set with the other integrated experiences' products. How you navigate AppOptics and access its features may vary from these instructions. For more information, go to the APM Integrated Experience documentation.

The scripts are not supported under any SolarWinds support program or service. The scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.