Relic Solution: .NET Core Agent Installation Troubleshooting in Linux

This post assumes that you are sure the .NET Core agent is not creating logs for your application and that you have a Linux OS. If you’re not sure about this, start with the general .NET agent troubleshooting guide.

  • If you are using the .NET Core agent in Windows, see this post instead.

:grey_exclamation: You’re going to need admin privileges on your host to work through this post.

1. Start/Restart your application and check for logs.

2. Get your application’s process ID

Get the process ID (PID) your application is currently running under.

From the console:

pidof dotnet

or

pidof my_process_name

3. Check if the .NET Core agent profiler is loaded into the application’s process

In the console (replace [pid] with your PID).

sudo cat /proc/[pid]/maps | grep "libNewRelicProfiler.so"
  • If you don’t get any results from that command, continue
  • If you DO get results, skip down to # 5 (permissions)

4. Check for the required environment variables:

In the console (remember to replace [pid] with your PID).

xargs --null --max-args=1 < /proc/[pid]/environ | grep "CORECLR_"
  • If you get no results, set your environment variables, restart your app and go back to #1.

  • If you DO get results, make sure all four required variables are set and have valid values:

    • CORECLR_ENABLE_PROFILING - Must always be set to 1.

    • CORECLR_PROFILER - Must always be set to {36032161-FFC0-4B61-B559-F6C5D41BAE5A}.

    • CORECLR_NEWRELIC_HOME - Must be set to the fully qualified path to the .NET Core agent directory (the directory where newrelic.config, libNewRelicProfiler.so, and the extensions directory are located).

    • CORECLR_PROFILER_PATH - Must be set to the fully qualified path to the file libNewRelicProfiler.so. This is almost always equal to CORECLR_NEWRELIC_HOME + /libNewRelicProfiler.so

  • If you made any changes to your environment variables, restart your app and go back to #1

5. Check permissions.

  • Make sure that the user your application process is running under has read/write/execute permissions to directory where the .NET Core agent was extracted on your system (CORECLR_NEWRELIC_HOME), and all of its sub-directories.

  • If you made any changes, restart your app and go back to #1

6. ¯\_(ツ)_/¯

  • If you’ve come this far and still don’t have any logs for your application you either have a compatibility issue or something out-of-the-ordinary is going on.

  • Contact support or ask in these forums with your specific questions.

If you have logs now

3 Likes